[javascript] concaténer une variable

Fermé
mely07 Messages postés 5 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 6 mai 2004 - 6 mai 2004 à 12:05
 Webseb - 12 oct. 2010 à 11:28
Bonjour,
j'ai un formulaire ayant des champs texte.
Ce nombre de champs texte dépend d'un nombre saisi par l'utilisateur auparavant.
Ces champs textes sont donc générer dans une boucle for, pour qu'ils aient des noms différents, j'ai mis un suffixe correspondant au compteur de la boucle :

for($i=;$i<$nb_options;$i++){ 
?> <input type="text" name="texte_<? echo $i ?>"> 
...... 
} 



Ma question est de savoir comment connaître la valeur saisie par l'utilisateur pour chacun de ces champs dans mon script JavaScript :
en effet je fais également une boucle mais au moment de récupérer la valeur :

var texte; 
for(var i=0;i<nb_options;i++){ 
  texte=document.FormAjoutChamp.texte_i.value; 
} 



Le problème c'est la concaténation avec i.

Merci de m'aider car ce sont mes premiers pas dans JavaScript.
Merci beaucoup en espérant avoir été claire.

4 réponses

Je viens de galérer sur exactement le même problème... Je sais que je remonte un vieux topic, mais comme c'est très souvent ce site qui ressort en premier dans les résultats Google, je me permets de publier ma solution, car la "meilleure réponse" ne fonctionne pas...

tmp = 'document.FormAjoutChamp.texte_' + i + '.value';
texte = eval(tmp);

Je sais que c'est un peu vieillot, mais ça marche (testé sur Firefox, IE, Chrome, Opera et Safari).
Je l'ai trouvé ici :
https://forum.hardware.fr/hfr/Programmation/HTML-CSS-Javascript/concatenation-variables-sujet_52108_1.htm
22
Utilisateur anonyme
6 mai 2004 à 12:44
essaie ca
tmp = "texte_" + i;
texte = document.FormAjoutChamp.tmp.value;
6
Utilisateur anonyme
6 mai 2004 à 13:25
ou

for(var i=0;i<nb_options;i++)
{
texte=document.getElementById("texte_" + i).value;
}

plutot
6
sauf que c est pas un ID mais un TagName..... et c est sensé etre la meilleure réponse???
0
mely07 Messages postés 5 Date d'inscription dimanche 12 octobre 2003 Statut Membre Dernière intervention 6 mai 2004 6
6 mai 2004 à 13:15
merci beaucoup ! !
4