Concatenation javascript

Fermé
ninamora - 16 oct. 2008 à 11:40
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 - 16 oct. 2008 à 14:16
Bonjour,

je souhaite faire une concaténation comme ceci en javascript :

function verifier_reponses(rep, cpt)
{
   if (document.questions.chk+cpt+1.checked == true)
   {
    var x = 1;
   }
}



cpt est un numerique passé en parametre compri entre 1 et 4. en fait il faut que ca donne ca une fois la concaténation faite :
document.questions.chk11.checked ou chk21 en fonction de la valeur de cpt biensur.

je doute que ma syntaxe soit correcte car cela ne fonctionne pas

merci de m'éclairer !!!

6 réponses

hani_ Messages postés 333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 18 novembre 2009 20
16 oct. 2008 à 11:45
function verifier_reponses(rep, cpt)
{
var concat = cpt;
concat+=1;
if (document.questions.chk+concat.checked == true)
{
var x = 1;
}
}
0
En javascript, tu ne peux pas concaténer qulque chose au bout du nom d'une variable pour obtenir un autre nom de variable.
Utilise un if, un switch ou un tableau
0
tu veux bien me montrer un exemple car je ne vois pas ce que tu veux dire.

merci
0
version switch par exemple :
  switch (cpt) {
    case 11 :  if (document.questions.chk12.checked ) var x = 1; break;
    case 21 :  if (document.questions.chk22.checked ) var x = 1; break;
   }


remarques : si cpt est un texte, il faut mettre '11' et '21' .
if (condition) est exactement la même chose que if (condition==true) qu'on voit souvent.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
oui mais le probleme c ke le cpt peut varier de 1 jusqu'a 20 ou meme 30 !
0
Alain_42 Messages postés 5361 Date d'inscription dimanche 3 février 2008 Statut Membre Dernière intervention 13 février 2017 894
16 oct. 2008 à 14:16
salut,

il faut faire un petit coup de eval pour avoir une variable dynamique (dont le nom change)

function verifier_reponses(rep, cpt)
{

var variable_dyn="chk"+cpt;
if (document.questions.eval(variable_dyn).checked == true)
{
//etc..
//et return la reponse
}
}



@lain
0
hani_ Messages postés 333 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 18 novembre 2009 20
16 oct. 2008 à 14:15
foreach cpt{
if (document.questions.chk11.checked )
{
var x = 1;
cpt++;
}
}
0