Vanator Posté 13 Avril 2006 Posté 13 Avril 2006 Bonjour, j'ai un soucis en javascript avec la concaténation. En fait j'ai un formulaire dynamique, c'est à dire le nombre de champs est variable selon ce qui est trouvé dans la base de donnée. je les nomme par exemple 'nomduchamp_'.$i où $i change. C'est à dire j'ai un champ 'champ_1', 'champ_2', 'champ_3', etc. Dans mon fichier javascript j'aimerai pouvoir récupérer le nom du champ grâce à une boucle pour faire subir un traitement. Voici donc comment j'ai essayé de faire au moins pour tester si le script prenait bien ce que je voulais : for(i=1;i<4;i=i+1){ champ = document.formulaire.champ_+i; alert(champ.value);} Mais évidemment ça ne marche pas [decu] La manière de concaténer n'est pas bonne. Mais si je mets ceci : for(i=1;i<4;i=i+1){ champ = 'document.formulaire.champ_'+i; alert(champ.value);} J'obtiens bien "document.formulaire.champ_1", "document.formulaire.champ_2", etc, mais il le prend comme une chaîne de caractère et non plus un objet. Quelqu'un pourrait-il m'aider pour résoudre ce problème ? Merci d'avance
Vincent Posté 13 Avril 2006 Posté 13 Avril 2006 bonjour, il faut utiliser la fonction eval(), qui sert a evaluer la chaine de caractere en parametre for(i=1;i<4;i=i+1){champ = eval("document.formulaire.champ_"+i);alert(champ.value);}
Vanator Posté 13 Avril 2006 Auteur Posté 13 Avril 2006 Ok, merci, ça marche du tonnerre Après avoir apprit à maîtriser pas trop mal PHP je débute en Javascript, donc je n'ai pas encore l'habitude. Merci beaucoup
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant