checkbox check all probleem
oplossing
----------
Ik heb vrijwel geen enkele verstand van javascript, dus ik vraag jullie om hulp.
Ik heb nu de onderstaande javascript om alle checkboxen met bepaalde naam te selecteren in een form. Alleen kan ik er niet veel
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<?php
// script
<script language="JavaScript">
function checkall(formname,checkname,thestate){
var el_collection=eval("document.forms."+formname+"."+checkname)
for (c=0;c<el_collection.length;c++)
el_collection[c].checked=thestate
}
</script>
// wordt gebruikt om checkboxen te selecteren
<a href="javascript:checkall(\'inbox\',\'item\',true)">all</a>
<form name="inbox" method="POST">
<input type="checkbox" name="item" value="1">
<input type="checkbox" name="item" value="2">
<input type="checkbox" name="item" value="3">
</form>
?>
// script
<script language="JavaScript">
function checkall(formname,checkname,thestate){
var el_collection=eval("document.forms."+formname+"."+checkname)
for (c=0;c<el_collection.length;c++)
el_collection[c].checked=thestate
}
</script>
// wordt gebruikt om checkboxen te selecteren
<a href="javascript:checkall(\'inbox\',\'item\',true)">all</a>
<form name="inbox" method="POST">
<input type="checkbox" name="item" value="1">
<input type="checkbox" name="item" value="2">
<input type="checkbox" name="item" value="3">
</form>
?>
Wanneer ik op submit klik en er zijn meerdere checkboxen geselecteerd krijg ik de laatste waarde geselecteerd. $_POST['item'] bevat dan alleen maar waarde 3.
En met name="item[1]" werkt het script niet.
Kan iemand me verder helpen?
Gewijzigd op 15/10/2010 18:41:01 door Karizma Yusuf
komt omdat item steeds word overschreven , je kunt er een for loop op de namen zetten zodat elk item er ook een getal achter krijgt
ehm jaa dat kan dan heeft elke input inderdaad een nieuwe name, maar dan werkt de script niet, omdat het op name="item" controleert.
Teun Hesseling op 15/10/2010 16:40:33:
komt omdat item steeds word overschreven , je kunt er een for loop op de namen zetten zodat elk item er ook een getal achter krijgt
Slecht idee als je van name="item" name="item[]" maakt ben je ook van het probleem af
name="item[]" wordt dan in de $_POST een array
maar heb een ander variant met dit zelfde functie gevonden, de oplossing is te zien in me 1e bericht.
Maarjah alsnog bedankt mensen.