Concatenation javascript

ninamora -  
Alain_42 Messages postés 5413 Statut Membre -
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 !!!
Configuration: Windows XP
Firefox 3.0.3

6 réponses

  1. hani_ Messages postés 346 Statut Membre 20
     
    function verifier_reponses(rep, cpt)
    {
    var concat = cpt;
    concat+=1;
    if (document.questions.chk+concat.checked == true)
    {
    var x = 1;
    }
    }
    0
  2. 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
  3. ninamora
     
    tu veux bien me montrer un exemple car je ne vois pas ce que tu veux dire.

    merci
    0
  4. 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
  5. Vous n’avez pas trouvé la réponse que vous recherchez ?

    Posez votre question
  6. ninamora
     
    oui mais le probleme c ke le cpt peut varier de 1 jusqu'a 20 ou meme 30 !
    0
    1. Alain_42 Messages postés 5413 Statut Membre 904
       
      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
  7. hani_ Messages postés 346 Statut Membre 20
     
    foreach cpt{
    if (document.questions.chk11.checked )
    {
    var x = 1;
    cpt++;
    }
    }
    0