Javascript : vérif formulaire: problème conca

Résolu
Utilisateur anonyme -  
 Utilisateur anonyme -
Bonjour,

Bonjour

pour faire des vérification de contenu avant envoi d'un formulaire, j'utilise une fonction javascript

mon problème est que je veux vérifier tout les champs mais le nombre de champs n'est pas fixe

donc le nom du champs contient un chiiffre déterminé par la boucle qui cree les champs

donc en php le champs à comme nom
"nb_".$i


et je veux pouvoir faire la même chose en javascript sauf que ca me le prend pas...

mon code javascript c'est :
var champ = 'nb_'+j ;
alert(form.champ.value) ;



j étant la variable incrémentale du POUR (ce qui me permet de traiter chaque champ l'un apres l'autre)
si je met
alert(form.nb_0.value) ;


ca marche très bien

donc voilà ca fait maintenant 6heures que je suis dessus et je vais peter un cable...

--

4 réponses

Utilisateur anonyme
 
solution :

var champ ;
eval('champ = form.nb_'+j) ;
alert(champ.value) ; 
1
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   922
 
salut,

et si tu fais un :
document.getElementById( 'nb_' + j );

dans ta boucle.
si il retourne un élément, tu traites sinon tu sors de la boucle.

autre possibilité, parcourir le DOM et sortir toutes les balises contenues dans le formulaire.

ou alors avec 'document.getElementsByTag()' qui te renverra toutes les balises du type demandé.
si tu mets tous tes champs dans un <fieldset> tu pourras demander au <fieldset> de te renvoyer tous les <input> qu'il contient.

je sais pas si je suis très clair…
(ô_O)'
0
Utilisateur anonyme
 
merci mais le getelementbyid ne marche pas mieux...

le probleme c'est pour récupérer le contenu de mon chamsp car avec mon code champ = "form.nb_0.value" masi appereement il me considere ca comme une chaine de caractere alors que c'est pas le cas...

je précise que le javascript je débute... (php je connais)
0
Dalida Messages postés 6728 Date d'inscription   Statut Contributeur Dernière intervention   922
 
et si tu donnes un identifiant à ton <form ='formulaire'> et que tu lui demande de lister les balises <input> ?
tu peux en plus tester le type.
form = document.getElementById( 'formulaire );
inputs = form.getElementsByTag( 'input' );
for( i = 0; i < inputs.length; i++ )
{
	if( inputs[i].type == "text" )
	{
		alert( inputs[i].name );
	}
}
0