Griser 1 liste déroulante liée à une autre, pb de concaténat
Bonjour,
J'ai plusieurs listes déroulantes, fonctionnant 2 par 2.
En fonction de la valeur d'une variable x, mes listes déroulantes s'appellent :
x=1 --> type1 et geno1
x=2 --> type2 et geno2
...
Lorsque je choisi une valeur dans la 1ere, si elle est égale a 'autre', je veux désactiver ma 2eme liste déroulante.
Sur la 1ere liste, j'ai onChange : test_val(x)
et voila le code de ma fonction test_val:
Code:
1 2 3 4 5 6 7 8 9 10 11
| function test_val(param){
if (document.getElementById(\'type'+param+'\').options[document.getElementById(\'type'+param+'\').selectedIndex].text=='autre')
{
alert('ok');
alert ('2eme liste : document.form.geno'+param+'.disabled = true');
}
else
{
alert('pas ok');
}
} |
Le test marche bien, puisque les messages "ok" et "pas ok" s'affiche aux moments voulu, c'est a dire que "ok" s'affiche quand "autre" est sélectionné dans la 1ere liste, sinon, "pas ok" s'affiche.
D'apres ce que j'ai trouvé sur un autre forum (http://www.webrankinfo.com/forums/viewtopic_11523.htm), il faut bien utiliser la proprieté disabled.
Ceci semble s'afficher correctement, mais comment le faire executer?
Code:
alert ('2eme liste : document.form.geno'+param+'.disabled = true');
J'ai essayer de mettre directement
Code:
document.form.geno+param+.disabled = true;
ou
Code:
'document.form.geno'+param+'.disabled = true';
mais la concatenation pose un probleme.
Sans une de ces 2 lignes, le code javascript s'execute normalement. Si une des 2 est présente, plus de javascript et il y a le message d'erreur "Erreur de syntaxe".
Est ce que quelqu un voit comment faire?
Merci d'avance pour votre attention.
Linou
PS : J'ai bien vu le post ce post sur les listes déroulantes liées entre elles, mais la solution ne se trouve pas la.