probleme de syntaxe et boucle while
Bonjour, j'ai un probleme sur une fonction javascript. il doit y avoir un probleme de syntaxe que je ne comprend pas. Le but de la fonction est de rediriger vers une page en passant une série de parametres.
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
|
function valideGenre(page, nombre) {
var lien="";
lien="document.location.href=page+'?idcategorie='+document.getElementById('categorie').options[document.getElementById('categorie').selectedIndex].value";
if (document.getElementById('nbgenre').value != "") {
var nbgenres = parseInt(nombre)+1;
lien += "+'&nbgenre='+nbgenres";
var i=1;
//boucle
while (i < nbgenres) {
var namegenre= "genre"+i+"";
var namegenre2= "&genre"+i+""; lien+="+namegenre2+'='+document.getElementById(namegenre).value";
i++;
}
lien+="+'&genre'+i+'='+document.getElementById('genre').options[document.getElementById('genre').selectedIndex].value";
eval(lien);
}
} |
Donc quand nombre=1, pas de probleme, le lien est bien: page.php?idcacegorie=1&nbgenre=1&genre1=1 et l'on ne passe pas dans la boucle while.
quand nombre= 2, pas de probleme. on passe dans la boucle while puis dans l'instruction après la boucle.
le lien est: page.php?idcategorie=1&nbgenre=2&genre1=2&genre2=4
par contre quand nombre =3, j'obtiens
page.php?idcategorie=1&nbgenre=3&genre2=4&genre2=4&genre3=3
donc j'ai un "genre2" au lieu d'un "genre1".
Je ne vois pas pourquoi ma boucle while ne fonctionne pas bien.
Merci d'avance.