J'ai un premier select qui possede trois options et un deuxieme select qui possede des options dynamiques en fonction de celle choisi dans le premier.

Au choix du de l'option C du premier select, j'active le deuxième select qui est au préalable désactivé.

Le code est le suivant:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
27
28
29
30
31
 
<SCRIPT language="JavaScript">
var groups=document.blablabla.categorie1.options.length
var group=new Array(groups)
for (i=0; i<groups; i++)
group[i]=new Array()
 
group[0][0]=new Option("","");
 
group[1][0]=new Option("","");
 
group[2][0]=new Option("optionb1","o1");
group[2][1]=new Option("optionb2","o2");
group[2][2]=new Option("optionb3","o3");
 
var temp=document.blablabla.categorie2
 
function redirect(x){
for (m=temp.options.length-1;m>0;m--)
temp.options[m]=null
for (i=0;i<group[x].length;i++){
temp.options[i]=new Option(group[x][i].text,group[x][i].value)
}
 
temp.options[0].selected=true
 
if(document.formalismeitemcreatevalue.categorie1.options.selectedIndex==2)
temp.disabled=false;
 
}
</SCRIPT>
Mon problème est le suivant:
Imaginons quelqu'un qui choisi l'option 3 pour le premier select (qui active le 2e select) puis décide de choisir l'option 1.
Alors le deuxieme select restera activé... je souhaite donc le désactiver et remettre les valeur du deuxieme select à "".

Avez vous une idée ?

J'apelle la fonction de la facon suivante:
<html:select property="categorie1" size="1" style="width : 130" onchange="if(this.options.selectedIndex==2){redirect(this.options.selectedIndex)} ">