Ciao. Sul mio form ho un menù a discesa (drop down). Vorrei che la selezione da parte dell'utente di un'opzione piuttosto che di un'altra su questo drop down determini un drop down successivo con opzioni differenti. Mi spiego meglio: aprendo il primo drop down l'utente si troverà a disposizione tre opzioni: "Opzione 1" "Opzione 2" "Opzione 3". Se sceglie "Opzione 1" nel menù a tendina successivo si dovranno caricare "Opzione 1_1" "Opzione 1_2" "Opzione 1_3", se invece sceglie l'Opzione 2 allora nel menù a tendina successivo si dovranno caricare tre opzioni diverse "Opzione 2_1" "Opzione 2_2" "Opzione 2_3"
Ho preso spunto da questa discussione
http://forum.joomla.it/index.php?topic=111315.new;topicseen#new da me stesso aperta e dove Vales mi aveva risolto un gran problema. Ora non sto qui a dire il motivo per cui mi ritrovo di nuovo ad affrontare la stessa problematica (diciamo che ho fatto un po' di casini e ho dovuto ricominciare daccapo...). Ho ripreso quel post e ho utilizzato esattamente lo stesso codice riadattandolo al nuovo form. Tuttavia stavolta non ha funzionato, nel senso che cliccando su "Seleziona Categoria" non mi ritrovo alcun elenco e ovviamente lo stesso anche cliccando su "Seleziona Articolo". Sinceramente non ne capisco il motivo visto che è la stesso identico scenario.
Di seguito mostro la parte di codice di interesse che ho incollato sul Form HTLM
<div class="form_item">
<div class="form_element cf_dropdown">
<label class="cf_label" style="width: 150px;">Selezionare la Categoria di interesse</label>
<select class="cf_inputbox" id="select_9" size="1" title="" name="select_9"> onfocus="fillCategory();" onchange="SelectSubCat();" >
<option value="">Choose Option</option>
</select>
</div>
<div class="cfclear"> </div>
</div>
<div class="form_item">
<div class="form_element cf_dropdown">
<label class="cf_label" style="width: 150px;">Selezionare l'Articolo di interesse</label>
<select class="cf_inputbox" id="select_10" size="1" title="" name="select_10">
<option value="">Choose Option</option>
</select>
e la parte di codice che ho incollato nel Form JavaScript:
//questo è il codice da inserire nella TAB Form Code sezione javascript
function fillCategory(){
removeAllOptions(document.getElementById('ChronoContact_Form_Contatti').select_9);
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '1', 'Quadri');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '2', 'Centritavola');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '3', 'Cuscini');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '4', 'Biancheria da Bagno');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '5', 'Biancheria da Cucina');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '6', 'Oggettistica varia per la casa');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_9, '7', 'Decorazioni natalizie');
}
function SelectSubCat(){
// Funzione chiamata dopo la selezione della Sezione
removeAllOptions(document.getElementById('ChronoContact_Form_Contatti').select_10);
//addOption(document.getElementById('ChronoContact_Form_Contatti').select_10, "", "Seleziona", "");
// Raccoglie tutti gli elementi della categoria per id
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '1'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'1', 'Agrumi di Sicilia');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'2', 'Scalinata di Taormina');
}
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '2'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'3', 'Centrino Mimosa');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'4', 'Centrino Caltagirone');
}
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '3'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'5', 'Cuscino1');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'6', 'Cuscino2');
}
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '4'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'7', 'Trittico di Tulipani');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'8', 'Asciugamano e ospite Margherite');
}
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '5'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'9', 'Strofinacci Fantasia');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'10', 'Salvamacchia');
}
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '6'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'11', 'Farfallina variopinta');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'12', 'Piatto Girasole');
}
if (document.getElementById('ChronoContact_Form_Contatti').select_9.value == '7'){
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'13', 'Abbraccio degli angeli');
addOption(document.getElementById('ChronoContact_Form_Contatti').select_10,'14', 'Cuscino Bianco Natale');
}
}
//////////////////
function removeAllOptions(selectbox) {
var i;
for(i=selectbox.options.length-1;i>=1;i--)
{
selectbox.options[i]=null;
//selectbox.remove(i);
}
}
function addOption(selectbox, value, text ) {
var optn = document.createElement("option");
optn.text = text;
optn.value = value;
selectbox.options.add(optn);
//selectbox.appendChild(optn,where);
}
Qualcuno sa dirmi dov'è l'errore?
Grazie mille