Liste déroulante chainée : problème avec value
Bonjour,
J'essaie d'implémenter une fonction qui permet lordsque l'on clique sur une liste, qu'une seconde soit mise à jour.
Voici le code :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23
| function ShowURL(form)
{
i = form.site_id.selectedIndex;
if (i == 0) { return; }
switch (i)
{
case 1 :
var urls_id = new Array(1,2,3);
var urls = new Array('a.htm','b.htm','c.htm');
break;
case 2 :
var urls_id = new Array(4,5,6,7);
var urls = new Array('d.htm','e.htm','f.htm','g.htm');
break;
}
for (i=0; i<2; i++)
{
form.url_id.options[i+1].value=urls_id[i];
form.url_id.options[i+1].text=urls[i];
}
}
//-->
</script> |
Ca fonctionne à moitié. En effet, lors d'un choix dans la liste 1, la liste 2 est mise à jour avec le tableau urls[i].
Ainsi la liste qui au préalable est :
Code:
1 2 3 4 5
| <option></option>
<option></option>
<option></option>
<option></option>
<option></option> |
devient dans le cas du choix 2 dans la liste 1
Code:
1 2 3 4 5
| <option>d.htm</option>
<option>e.htm</option>
<option>f.htm</option>
<option>g.htm</option>
<option></option> |
Or je voudrais qu'elle devienne :
Code:
1 2 3 4 5
| <option value="4">d.htm</option>
<option value="5">e.htm</option>
<option value="6">f.htm</option>
<option value="7">g.htm</option>
<option></option> |
Apparemment ce code form.url_id.options[i+1].value=urls_id[i]; ne fonctionne pas.
A l'aide. :cry: