Salve a tutti,
ho 2 select box (Stati e Provincie) che dovrebbero essere concatenate in questo modo:
1. quando lo stato selezionato è Italia appaiono nell'altro select box tutte le provincie italiane
2. quando è selezionato qualsiasi altro stato nel secondo select box appare solo la voce "estero"
Realizzare il primo caso non è un grosso problema, quello che non riesco a fare in modo dinamico è il caso 2 o perlomeno ci riesco in modo manuale cioè settando per tutte le voci group[x][0]=new Option("Estero"). C'è un modo per dire "se è diverso da Italia allora associa il valore estero" ?
Qualcuno ha idea di come fare?
Posto il codice preparare finora:
Graziecodice:<select name="example" size="1" onChange="redirect(this.options.selectedIndex)"> <option value="" > [Selezionare]</option> <option value="italia" onChange="redirect(this.options.selectedIndex)"> Italia</option> <option value="Albania">Albania</option> <option value="Andorra">Andorra</option> <option value="Argentina">Argentina</option> ... </select> <select name="stage2" size="1"> <option value="null">Selezionare</option> </select> </p> <input type="submit" name="invia" onClick="go()" value="invia"/><font color="#e14800"> <script type="text/javascript" language="JavaScript"> <!-- var groups=document.doublecombo.example.options.length var group=new Array(groups) for (i=0; i<groups; i++) group[i]=new Array() group[0][0]=new Option("Selezionare") group[1][0]=new Option("Agrigento") group[1][1]=new Option("Alessandria") group[1][2]=new Option("Ancona") group[1][3]=new Option("Aosta") group[1][4]=new Option("Arezzo") group[1][5]=new Option("Ascoli") group[1][6]=new Option("Asti") group[1][7]=new Option("Avellino") ... ... ... group[2][0]=new Option("Estero") group[3][0]=new Option("Estero") group[4][0]=new Option("Estero") group[5][0]=new Option("Estero") ... ... ... var temp=document.doublecombo.stage2 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 } function go(){ location=temp.options[temp.selectedIndex].value } //--> </script>![]()

Rispondi quotando