[Javascript] Argument form et checkbox

Fermé
Hayu - 13 juin 2013 à 15:59
Bonjour,

J'ai une petite question pour la vérification coté client d'un formulaire

Supposons un form :
<form method="post" onsubmit="return creationsav(this);" action="./sav.php">
		<label>Numéro BAT :</label><input type="text" name="cr_mail"  readonly="readonly"/>
					<label>Numéro facture :</label><input type="text" name="cr_facture"  readonly="readonly"/>
				<div><input type="checkbox" name="cr_mec_SAV[]" value="Production France"><label>Production France</label></div>
					<div><input type="checkbox" name="cr_mec_SAV[]" value="Production autre Asie"><label>Production autre Asie</label></div>
					<div><input type="checkbox" name="cr_mec_SAV[]" value="Service commercial"><label>Service commercial</label></div>
					<div><input type="checkbox" name="cr_mec_SAV[]" value="Gest. commande"><label>Gest. commande</label></div>



Un formulaire tout simple ou je passe juste l'argument "this" à la fonction JS.

function creationsav(form){
	var erreur="Erreur de validation :";
	var nb_erreur=0;
	var expmontantsav=new RegExp("^[\x200-9.,]{2,}$","g");
	var expmontantfacture=new RegExp("^[\x200-9.,]{2,}$","g");
	if(!expmontantsav.test(form.cr_montant_sav.value) || form.cr_montant_sav.value==''){erreur=erreur+"<br/> - Montant SAV sous forme XX.XX";nb_erreur++;}
	if(!expmontantfacture.test(form.cr_montant_facture.value) || form.cr_montant_facture.value==''){erreur=erreur+"<br/> - Montant facture sous forme XX.XX";nb_erreur++;}
	if(nb_erreur>0){
		document.getElementById("reponse_texte_false").innerHTML=erreur;
		document.getElementById('reponse_contact_false').style.display='block';
		document.getElementById('reponse_contact_false').style.backgroundColor='#e7aeb2';/**Regle le souci fond IE8**/
		return false;
		}
}


Je peux accéder aux éléments en faisant par exemple form.cr_mail.value mais bizarrement je n'arrive pas à accéder aux données des checkbox en faisant form.cr_mec_SAV[].lenght

Existe-t-il un moyen de récupérer la variable avec mon argument form et eviter de faire ça document.getElementsByName('cr_mec_SAV[]')[i].checked
??
En gros quand la variable est sous forme de tableau je n'arrive jamais à la récupérer proprement avec mon argument.

Merci d'avance