Avatar billede mini-me Nybegynder
10. april 2004 - 23:53 Der er 22 kommentarer og
1 løsning

Værdi fra selectbox

Hej Eksperter,

Jeg vil tilføje en <option> til min selectbox, jeg har regnet mig frem til det meste af koden, så jeg kan sagtens selv finde ud af at indsætte document.form.sel.options[0].text = "Nummer1"

problemet opstår så når jeg vil tilføje den næste værdi... hvordan får jeg options[0] til at blive dynamisk? SÅ den automatisk finder den højeste værdi ? Så er det jo bare at tilføje den værdi med 1 ?!
Avatar billede roenving Novice
11. april 2004 - 00:03 #1
Den 'rigtige' måde:

sel = document.getElementById('minSelect');
for(i=0;laengde>i;i++){
  newOpt = document.createElement('OPTION');
  sel.appendChild(newOpt);
  newOpt.text = 'nummer' + i;
  newOpt.value = 'nummer' + i;
  newOpt.selected = true;
}

eller et shortcut, som dog ikke altid gør det rigtigt:

document.form.sel.options[document.form.sel.length].text = "Nummer + (document.form.sel.length+1) !-)
Avatar billede mini-me Nybegynder
11. april 2004 - 00:08 #2
Hmmm kan ikke rigtig få det "forkerte" til at virke??
Avatar billede mini-me Nybegynder
11. april 2004 - 00:10 #3
og engentlig hellere ikke den "rigtige" måde...

Der er ingen "selected" værdi i min listbox og skla hellere ikke være det...
Avatar billede roenving Novice
11. april 2004 - 00:10 #4
Der mangler en "": "Nummer " +

-- og jeg bruger til enhver tid den 'rigtige' !-)
Avatar billede roenving Novice
11. april 2004 - 00:13 #5
Jeg viste bare de linjer, som man normalt kan komme til at bruge, der er jo ikke noget galt i at fjerne en linje og undlade at sætte en property !-)
Avatar billede mini-me Nybegynder
11. april 2004 - 00:16 #6
Nej nej, men det virker stadig ikke... den rigtige.. og hellere ikke den forkerte... den forkerte får jeg bare: ...options[...]' er null eller ikke et objekt...
Avatar billede roenving Novice
11. april 2004 - 00:19 #7
Hvad får du af fejl med DOM-metoden ?-)
Avatar billede mini-me Nybegynder
11. april 2004 - 00:21 #8
et objekt var ventet...
Avatar billede roenving Novice
11. april 2004 - 00:27 #9
Har du sørget for at sel er et levende html-element i javascript-forstand ?-)

Nu brugte jeg den skrivemåde, jeg normalt foretrækker, men du kunne også:

sel = document.FORMNAVN.SELECTNAVN;

i stedet for den første linje !-)
Avatar billede jammerlap Nybegynder
11. april 2004 - 00:27 #10
Du skal bare skrive <option> skidne æg er kræs!
Avatar billede mini-me Nybegynder
11. april 2004 - 00:30 #11
Tell my why it aint working !! !>>)

<HTML>
    <HEAD>
        <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    </HEAD>
    <body>
    <script language="javascript">
   
        function AddFile()
        {
            // Retrive filename from fileselector    
            fileName = document.UploadForm.fileSelector.value
           
            // Check if it is the first file..
            if(document.UploadForm.SelectedFiles.options[0].text == "No files")
            {
                document.UploadForm.SelectedFiles.options[0].text = fileName;
            }else{
           
            sel = document.UploadForm.SelectedFiles
            for(i=0;laengde>i;i++){
            newOpt = document.createElement('<OPTION>');
            sel.appendChild(newOpt);
            newOpt.text = 'nummer' + i;
            newOpt.value = 'nummer' + i;
                       
            }
        }
       
    </script>
        <form method="post" action="upload.asp" name="UploadForm">
            <table>
                <tr>
                    <td>
                        Vælg fil:
                    </td>
                    <td>
                        <input type="file" name="fileSelector" onChange="AddFile()">
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        Herunder kan du se hvilke filer du har valgt at uploade:
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <select name="SelectedFiles" size="20" id="SelectedFilesId">
                            <option value="0">No files</option>
                           
                        </select>
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <input type="button" value="Upload" name="Upload">
                    </td>
                </tr>
            </table>
        </form>
    </body>
</HTML>
</SELECT>
Avatar billede mini-me Nybegynder
11. april 2004 - 00:38 #12
Roenving hvad siger du til det??
Avatar billede roenving Novice
11. april 2004 - 00:42 #13
}else{
           
                sel = document.UploadForm.SelectedFiles
                newOpt = document.createElement('<OPTION>');
                sel.appendChild(newOpt);
                newOpt.text = fileName;
                newOpt.value = fileName;
                       
            }


-- og sorry, der kom lige noget coadmin-arbejde flyvende (se @ 00:27:59 !-)
Avatar billede mini-me Nybegynder
11. april 2004 - 00:49 #14
Det virker da... :) Tak for det... smid et svar
Avatar billede roenving Novice
11. april 2004 - 00:51 #15
Velbekomme '-)
Avatar billede roenving Novice
11. april 2004 - 00:57 #16
Og tak for points ;~}
Avatar billede mini-me Nybegynder
11. april 2004 - 01:09 #17
Jeg har lige et enkelt spm. mere hvis du lige har et blik øje...
Avatar billede roenving Novice
11. april 2004 - 01:14 #18
?-)
Avatar billede mini-me Nybegynder
11. april 2004 - 01:15 #19
ER det mig der er træt eller hvorfor skriver den ikke noget i mit textfelt?? men alert viser at der skulle stå noget i den !??!?!? 

<HTML>
    <HEAD>
        <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    </HEAD>
    <body>
        <script language="javascript">
   
        function AddFile()
        {
            // Retrive filename from fileselector    
            fileName = document.UploadForm.fileSelector.value
            document.all["HiddenFiles"].Value = fileName;
            // Check if it is the first file..
            if(document.UploadForm.SelectedFiles.options[0].text == "No files")
            {
                document.UploadForm.SelectedFiles.options[0].text = fileName;
                document.all["HiddenFiles"].Value = fileName;
                alert(document.all["HiddenFiles"].Value)
               
            }else{
               
                sel = document.UploadForm.SelectedFiles
                newOpt = document.createElement('<OPTION>');
                sel.appendChild(newOpt);
                newOpt.text = fileName;
                newOpt.value = fileName;
                               
              document.all["HiddenFiles"].Value = document.all["HiddenFiles"].Value + "," + fileName
              alert(document.all["HiddenFiles"].Value)
               
            }
        }
       
        </script>
        <form method="post" action="default.asp" name="UploadForm">
            <input type="text" name="HiddenFiles">
            <table>
                <tr>
                    <td>
                        Vælg fil:
                    </td>
                    <td>
                        <input type="file" name="fileSelector" onChange="AddFile()">
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        Herunder kan du se hvilke filer du har valgt at uploade:
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <select name="SelectedFiles" size="20" disabled>
                            <option value="0" selected>No files</option>
                        </select>
                    </td>
                </tr>
                <tr>
                    <td colspan="2">
                        <input type="Submit" value="Upload" name="Upload">
                    </td>
                </tr>
            </table>
        </form>
    </body>
</HTML>
Avatar billede roenving Novice
11. april 2004 - 01:19 #20
Fordi document.all, såvidt jeg husker arbejder mod id'er

Men sådan:

                document.UploadForm.HiddenFiles.Value = fileName;

              document.UploadForm.HiddenFiles.Value += "," + fileName;
              alert(document.UploadForm.HiddenFiles.Value)
Avatar billede mini-me Nybegynder
11. april 2004 - 01:21 #21
Naaa.... har da haft det til at virke på den måde her før? Og når jeg kører min alert alert(document.all["HiddenFiles"].Value) så kommer den også med den eller de korrekt værdier.. men min tekstboks forbliver tom ?!?!
Avatar billede roenving Novice
11. april 2004 - 01:26 #22
Jeg tror du har fået lov til at oprette et nyt objekt som property på document.all !-)

-- men du kan ligesågodt springe den over her ...

-- og desuden vil den forhindre skidtet i at virke i en masse browsere !o]
Avatar billede mini-me Nybegynder
11. april 2004 - 01:32 #23
Wierd shit... ændrede navnet... og nu virker det... tror jeg går i seng :P Men tak for det !
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester

Seneste spørgsmål Seneste aktivitet
I går 10:21 Ny printer, men hvilken Af mort1 i Printere
13/0819:41 USB på Linux Af Uvanga i Linux
12/0818:26 Hvilken type mus Af mort1 i PC
11/0813:21 ms Forms Af leahcim i Andet software
10/0821:30 Blokeret på Snapchat? Af LineP i Chat & Messaging