Carissimi,
utilizzo questo script che ha 2 select di cui una si popola alla selezione della prima.
Ora tutto va bene all'invio del form, ma se torno indietro, le select sono impostate sul option precedente ma il valore si è resettato, come posso fare che tornando indietro abbiamo l'ultimo option e valore selezionato???
codice:
<script type="text/javascript">
//Dichiaro l'array myMenu'
var myMenu = new Array();
//Definisco le voci del menu'
myMenu['a1'] = new Array(); //ABITATIVO
myMenu['a1']['appartamento_arredato'] = 'Appartamento: Arredato';
myMenu['a1']['appartamento_non_arredato'] = 'Appartamento: Non Arredato';
myMenu['a1']['posto_letto'] = 'Posto Letto';
myMenu['a1']['villa'] = 'Villa';
myMenu['a1']['---'] = 'Tutte le Tipologie';
myMenu['a2'] = new Array(); //COMMERCIALE
myMenu['a2']['dettaglio'] = 'Al Dettaglio';
myMenu['a2']['ingrosso'] = 'All ingrosso';
myMenu['a2']['ristorazione'] = 'Ristorazione';
myMenu['a2']['studi_medici'] = 'Studi Medici';
myMenu['a2']['studi_professionali'] = 'Studi Professionali';
myMenu['a2']['---'] = 'Tutte le Tipologie';
myMenu['a3'] = new Array(); //UFFICIO
myMenu['a3']['ufficio_appartamento'] = 'Appartamento';
myMenu['a3']['locale_commerciale'] = 'Locale Commerciale';
myMenu['a3']['---'] = 'Tutte le Tipologie';
myMenu['a4'] = new Array(); //DEPOSITO
myMenu['a4']['capannone'] = 'Capannone';
myMenu['a4']['garage'] = 'Garage';
myMenu['a4']['laboratorio_artigianle'] = 'Laboratorio Artigianale';
myMenu['a4']['deposito_ingrosso'] = 'Ingrosso';
myMenu['a4']['---'] = 'Tutte le Tipologie';
myMenu['a5'] = new Array(); //TERRENO
myMenu['a5']['agricolo'] = 'Agricolo';
myMenu['a5']['edificabile'] = 'Edificabile';
myMenu['a5']['industriale'] = 'Industriale';
myMenu['a5']['---'] = 'Tutte le Tipologie';
myMenu['---'] = new Array(); //TUTTI
myMenu['---']['---'] = 'Tutte le Tipologie';
function popola_select(){
var select = document.forms['ricerca_vendita'].mySelect_vendita; //Recupero la SELECT
var subselect = document.forms['ricerca_vendita'].mySubSelect_vendita; //Recupero la seconda SELECT
// Recupero la categoria selezionata
var cat = select.options[select.selectedIndex].value;
//Controllo che sia stata selezionata una categoria valida
if(cat.length != 0){
//Azzero il contenuto della seconda select
for (var i = subselect.length - 1; i >= 0; i--)
subselect.remove(i);
//Popolo la seconda Select
for(value in myMenu[cat]){
//Creo il nuovo elemento OPTION da aggiungere nella seconda SELECT
var NewOpt = document.createElement('option');
NewOpt.value = value; // Imposto il valore
NewOpt.text = myMenu[cat][value]; // Imposto il testo
//Aggiungo l'elemento option
try{
subselect.add(NewOpt, null); //Metodo Standard, non funziona con IE
}catch(e){
subselect.add(NewOpt); // Funziona solo con IE
}
}
}
}
</script>
Grazie
G.