jdeheyn
Messages postés23Date d'inscriptionvendredi 14 avril 2006StatutMembreDernière intervention14 janvier 2010
-
11 oct. 2007 à 11:51
cs_bultez
Messages postés13616Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention15 octobre 2013
-
13 oct. 2007 à 09:30
Bonjour,
J'utilise un script trouvé sur ce site pour vérifier en JavaScript si des cases sont cochées dans un formulaire (http://www.javascriptfr.com/codes/CONTROLER-NOMBRE-CHECKBOX-CLIQUEES_22913.aspx).
Ce formulaire est généré automatiquement par un script PHP.
Si dans ce formulaire j'ai plusieurs cases à cocher, le script fonctionne correctement.
Par contre, si je n'ai qu'une seule case à cocher, lorsque je la coche, j'ai ce message d'erreur :
'document.form.list_check[...].checked' a la valeur Null ou n'est pas un objet.
et le script ne semble pas détecter que j'ai cocher la case.
Je ne comprends pas ce qui génère cette erreur.
Voici le contenu de ma page :
<HTML>
<HEAD><META HTTP-EQUIV"Content-Type" CONTENT"text/html; charset= windows-1252"> <TITLE></TITLE>
<script language ="javascript"> <!--
if (nbre
>nbre_max ){
document .getElementById
('cadre_infos'
).innerHTML
='Tu as coch? '
+nbre+' cases.
Si tu valides maintenant rien ne sera comptabilis?.
';
}
if(nbre
= =0){
document
.getElementById
( 'cadre_infos'
).innerHTML
='Tu n\'as pas encore coch? de case.
Si tu valides maintenant rien sera comptabilis?.
'
;
}
}
functionverif (){
for(y
= 0; y
<document
.form
.list_check
.length
;y ++){
PetoleTeam
Messages postés3426Date d'inscriptionlundi 26 décembre 2005StatutMembreDernière intervention14 janvier 201116 12 oct. 2007 à 18:35
Bonjour,
Un approche serait de parcourir les éléments de la FORM à la recherche des INPUTs, dans ce cas tu auras un tableau d'objet, ensuite tu parcours et si type == "CHECKBOX" alors tu peux tester.
je sentirais bien un truc du style
function checkbox(num){
nbre =0;
var T_Input = document.form.getElementsByTagName('INPUT')
for( var i=0; i< T_Input.length; i++)
if( T_Input[i].type == "checkbox")
if( T_Input[i].checked)
nbre++;
// puis la suite...
;0)
Vous n’avez pas trouvé la réponse que vous recherchez ?