29. september 2008 - 19:28
Der er
13 kommentarer og 1 løsning
Array, name og id?
Hej Eksperter Jeg håber i kan hjælpe mig med et spørgsmål I PHP kan man bruge name="navn[]" hvis man har flere inputfelter man gerne vil have returneret i et array Hvordan gør man det med Javascript? Jeg har nemlig flere checkbox'e og kan ikke rigtig få det til at virke med navn[] og heller ikke med id[] Er der nogle der kan komme med noget hjælp så jeg kan komme videre? Skriv endelig hvis jeg ikke har formuleret mig klart :) På forhånd tak
Annonceindlæg fra Academic Work Denmark A/S
29. september 2008 - 19:37
#1
Du kunne kalde navne og id-er noget forskelligt, men man kan i praksis også: <form> <input type="text" name="navn[]" value="1"> <input type="text" name="navn[]" value="7"> </form> og så: var a=document.forms[0].elements["navn[]"]; alert(a[0].value); alert(a[1].value);
29. september 2008 - 19:50
#2
Hvordan kan jeg så tjekke hvilke af mine tjekbokse som er tjekket hvis jeg bruger navn[]? Jeg kan ikke bruge forskelligt navn til hver enkelt tjekboks for det er ikke defineret hvor mange jeg har dem. Og er det ikke bedre at bruge document.getElementById end document.getElementsByName? Du må sige til hvis der skal flere point i puljen!
29. september 2008 - 19:58
#3
Points er ligemeget. Hvordan skelner du mellem dine checkboxe på serveren?
29. september 2008 - 21:53
#4
<input type="checkbox" value="Sport" name="Genre[]"> <input type="checkbox" value="Animation" name="Genre[]"> Er det det du mener?
29. september 2008 - 21:57
#5
Så kan du jo aflæse value i javascript.
29. september 2008 - 22:27
#6
Ja, den er jeg med på og det virker også fint nok, men hvordan tjekker jeg om en af de mange checkbox'e er checket af? Meningen er jo at jeg ikke skal angive hvor mange jeg har så jeg hurtigt og nemt at kan tilføje en ekstra checkbox til mængden
29. september 2008 - 22:41
#7
Een af dem skal være afkrydset? Kun een? Må der være flere?
29. september 2008 - 22:46
#8
Nå, ja, du kan tælle dem, og så gøre hvad du vil ;) Skitse: <form> <input type="checkbox" name="navn[]" value="1" checked> <input type="checkbox" name="navn[]" value="7" checked> </form> og var a=document.forms[0].elements["navn[]"]; var count=0; for (var i=0;i<a.length;i++) { if (a[i].checked) { count++; } } alert(count)
29. september 2008 - 22:59
#9
Din metode virker da kun hvis formen bliver submit'et? Jeg submitter nemlig ikke formen for jeg har ikke en. Jeg skal bruge javascripten i forbindelse med noget Ajax, det er derfor
29. september 2008 - 23:01
#10
Du kan udføre den kode hvor du vil - i en knap, i noget Ajax, og selvfølgelig i en submit.
29. september 2008 - 23:22
#11
Ok, jeg kigger på det og så vender jeg tilbage Tak foreløbigt :)
30. september 2008 - 15:27
#12
Mange tal for hjælpen det var noget der godt kunne bruges Hvis du smider et svar så sender jeg point afsted til dig :)
30. september 2008 - 15:28
#13
Lyder godt. Men jeg samler slet ikke på point, tak. Svar selv, accepter eget svar.
30. september 2008 - 15:41
#14
Fair nok så, men tak for hjælpen i det mindste så :D
Vi tilbyder markedets bedste kurser inden for webudvikling