Concatenation javascript

ninamora -  
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   -
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   Statut Membre Dernière intervention   20
 
function verifier_reponses(rep, cpt)
{
var concat = cpt;
concat+=1;
if (document.questions.chk+concat.checked == true)
{
var x = 1;
}
}
0
toto
 
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
ninamora
 
tu veux bien me montrer un exemple car je ne vois pas ce que tu veux dire.

merci
0
toto
 
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
ninamora
 
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   Statut Membre Dernière intervention   894
 
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   Statut Membre Dernière intervention   20
 
foreach cpt{
if (document.questions.chk11.checked )
{
var x = 1;
cpt++;
}
}
0