[Javascript / jQuery] 2 onchange sur Select..
Résolu
reaverlost
Messages postés
168
Statut
Membre
-
reaverlost Messages postés 168 Statut Membre -
reaverlost Messages postés 168 Statut Membre -
Bonjour,
Je souhaiterai, sur une même balise Select, placer 2 évènements "OnChange". J'ai lu sur le Net qu'on pouvait le faire en faisant une fonction globale qui réunissait plusieurs fonctions...
J'ai donc fais ça :
Seulement ça ne marche pas... Je pense à un problème de syntaxe, ou mes fonctions qui sont peut-être mal écrites.
Si vous avez une idée, je suis preneur.
Merci :)
Je souhaiterai, sur une même balise Select, placer 2 évènements "OnChange". J'ai lu sur le Net qu'on pouvait le faire en faisant une fonction globale qui réunissait plusieurs fonctions...
J'ai donc fais ça :
<script type="text/javascript">
var lesOptions2 = new Array('<option value="Hotel/Guest House classique">Hotel/Guest House classique</option>'
+'<option value="Hotel/Guest House supérieur">Hotel/Guest House supérieur</option>'
+'<option value="Hotel/Guest House de luxe">Hotel/Guest House de luxe</option>',
'<option value="Camping">Camping</option>'
+'<option value="Lodge classique">Lodge classique</option>'
+'<option value="Lodge supérieur">Lodge supérieur</option>',
'<option value="aucun"> --- Sélectionnez un hébergement --- </option>');
var lesOptions3 = new Array ('<option value="Voyage Liberté 12 jours">Voyage Liberté 12 jours</option>'
+'<option value="Voyage Liberté 15 jours">Voyage Liberté 15 jours</option>'
+'<option value="Voyage Excellence">Voyage Excellence</option>'
+'<option value="Voyage en groupe - Circuit Essentiel">Voyage en groupe - Circuit Essentiel</option>'
+'<option value="Voyage en groupe - Circuit Harmonie">Voyage en groupe - Circuit Harmonie</option>',
'<option value="Circuit Harmonie">Circuit Harmonie</option>'
+'<option value="Autotour Sensation 4x4 et Camping">Autotour Sensation 4x4 et Camping</option>'
+'<option value="Safari itinérant">Safari itinérant</option>',
'<option value="aucun">--- Sélectionnez un circuit ---</option>');
function changer1_2()
{
function changer(tag, valeurOption)
{
switch(valeurOption)
{
case "Afrique du Sud":
$("#"+tag).html(lesOptions2[0]);
break;
case "Zimbabwe":
$("#"+tag).html(lesOptions2[1]);
break;
case "Botswana":
$("#"+tag).html(lesOptions2[1]);
break;
case "Zambie":
$("#"+tag).html(lesOptions2[1]);
break;
case "Namibie":
$("#"+tag).html(lesOptions2[1]);
break;
case "aucun":
$("#"+tag).html(lesOptions2[2]);
break;
default : break;
}
}
function changer2(tag2, valeurOption2)
{
switch(valeurOption2)
{
case "Afrique du Sud":
$("#"+tag2).html(lesOptions3[0]);
break;
case "Namibie":
$("#"+tag2).html(lesOptions3[1]);
break;
case "Botswana":
$("#"+tag2).html(lesOptions3[1]);
break;
case "Zambie":
$("#"+tag2).html(lesOptions3[1]);
break;
case "Zimbabwe":
$("#"+tag2).html(lesOptions3[0]);
break;
case "aucun":
$("#"+tag2).html(lesOptions3[2]);
break;
default : break;
}
}
}
</script>
<select name="objet" id="objet" class="normal"
onchange="changer1_2(changer('hebergement',this.options[this.selectedIndex].value),
changer2('circuit',this.options[this.selectedIndex].value);"
<option value="aucun"> --- Sélectionnez une destination --- </option>
<option value="Afrique du Sud">Afrique du Sud</option>
<option value="Namibie">Namibie</option>
<option value="Botswana">Botswana</option>
<option value="Zimbabwe">Zimbabwe</option>
<option value="Zambie">Zambie</option>
</select>
<select name="circuit" id="circuit" class="normal">
</select>
<select name="hebergement" id="hebergement" class="normal" >
</select>
Seulement ça ne marche pas... Je pense à un problème de syntaxe, ou mes fonctions qui sont peut-être mal écrites.
Si vous avez une idée, je suis preneur.
Merci :)
A voir également:
- [Javascript / jQuery] 2 onchange sur Select..
- Supercopier 2 - Télécharger - Gestion de fichiers
- Faire 2 colonnes sur word - Guide
- 2 ecran pc - Guide
- Telecharger javascript - Télécharger - Langages
- Avoir 2 comptes whatsapp sur le même téléphone - Guide
1 réponse
J'ai trouve. Je mets la solution pour ceux qui en auraient besoin à l'avenir :
Voila :)
var lesOptions2 = new Array ('<option value="Hotel/Guest House classique">Hotel/Guest House classique</option>'
+'<option value="Hotel/Guest House supérieur">Hotel/Guest House supérieur</option>'
+'<option value="Hotel/Guest House de luxe">Hotel/Guest House de luxe</option>'
+'<option value="Camping">Camping</option>',
'<option value="Camping">Camping</option>'
+'<option value="Lodge classique">Lodge classique</option>'
+'<option value="Lodge supérieur">Lodge supérieur</option>',
'<option value="aucun"> --- Sélectionnez un hébergement --- </option>');
function changer (tag, valeurOption)
{
switch(valeurOption)
{
case "Afrique du Sud":
$("#"+tag).html(lesOptions2[0]);
break;
case "Zimbabwe":
$("#"+tag).html(lesOptions2[1]);
break;
case "Botswana":
$("#"+tag).html(lesOptions2[1]);
break;
case "Zambie":
$("#"+tag).html(lesOptions2[1]);
break;
case "Namibie":
$("#"+tag).html(lesOptions2[1]);
break;
case "aucun":
$("#"+tag).html(lesOptions2[2]);
break;
default : break;
}
}
var lesOptions3 = new Array ('<option value="Voyage Liberté 12 jours">Voyage Liberté 12 jours</option>'
+'<option value="Voyage Liberté 15 jours">Voyage Liberté 15 jours</option>'
+'<option value="Voyage Excellence">Voyage Excellence</option>'
+'<option value="Voyage en groupe - Circuit Essentiel">Voyage en groupe - Circuit Essentiel</option>'
+'<option value="Voyage en groupe - Circuit Harmonie">Voyage en groupe - Circuit Harmonie</option>',
'<option value="Circuit Harmonie">Circuit Harmonie</option>'
+'<option value="Autotour Sensation 4x4 et Camping">Autotour Sensation 4x4 et Camping</option>',
'<option value="Circuit Harmonie">Circuit Harmonie</option>'
+'<option value="Autotour Sensation 4x4 et Camping">Autotour Sensation 4x4 et Camping</option>'
+'<option value="Safari itinérant">Safari itinérant</option>',
'<option value="aucun">--- Sélectionnez un circuit ---</option>');
function changer2 (tag2, valeurOption2)
{
switch(valeurOption2)
{
case "Afrique du Sud":
$("#"+tag2).html(lesOptions3[0]);
break;
case "Namibie":
$("#"+tag2).html(lesOptions3[0]);
break;
case "Botswana":
$("#"+tag2).html(lesOptions3[2]);
break;
case "Zambie":
$("#"+tag2).html(lesOptions3[1]);
break;
case "Zimbabwe":
$("#"+tag2).html(lesOptions3[2]);
break;
case "aucun":
$("#"+tag2).html(lesOptions3[3]);
break;
default : break;
}
}
<select name="objet" id="objet" class="normal" onchange="changer('hebergement', this.options[this.selectedIndex].value); changer2('circuit', this.options[this.selectedIndex].value)">
Voila :)