Page 1 sur 1

mon ptit for

Posté : 03 avr. 2009, 15:12
par fouf1
Salut a tous ptit pb sur un for alors je m'explique j'ai dans un java Script un for me permettant de décocher quelque checkbox mais mon for n'incrémente plus quand exemple 1,2,3,4,5,9 il stop a 5 pourquoi je pense le savoir comment remédier cela?

Code : Tout sélectionner

function deselection_tout_Prov() { for (i=1; i<=100; i++) { var un_checkbox = document.getElementById('cmbProvince'+i); un_checkbox.checked = false; } }
<input type="checkbox" '.(isset($_GET["cmbProvince".$i])?"checked='checked'":"").' name="cmbProvince'.$i.'" id="cmbProvince'.$i.'" value="'.$dept['id'].'" onClick="verifProv(this,'.$nb.');" checked/><label for="cmbProvince'.$i.'">'.$dept['nom'].' ('.$nombre_de_locations2.')(cmbProvince'.$i.')</label><br />'."\n";

Code : Tout sélectionner

(cmbProvince1) (cmbProvince2) (cmbProvince3) (cmbProvince4) (cmbProvince5) (cmbProvince6) (cmbProvince9) (cmbProvince10)

Posté : 03 avr. 2009, 16:04
par Ryle
Il s'arrête lorsqu'il tente d'accéder à un élément de ton formulaire qui n'existe pas... si tu as des case nommées cmbProvince 1,2,3,4,5,9 et que ta boucle for va de 1 à 100, lorsqu'elle passe par la valeur 6 pour essayer de cocher la case cmbProvince6, comme celle-ci n'existe pas , javascript te retourne une erreur et s'arrête.

Pour éviter cela, il te faut tester la présence de ton champ avant d'essayer de le décocher :
for (i=1; i<=100; i++) { 
  var un_checkbox = document.getElementById('cmbProvince'+i); 
  if (un_checkbox != null) {
    un_checkbox.checked = false; 
  }
}