[ 166 390 ]
[ 38.103.63.16 ]
JavaScript - Listes déroulantes dynamiquesVoici comment créer des listes déroulantes (select) dynamiques. Comme vous avez dû le constater sur certain formulaire, des listes peuvent interagir entre elles. Un Exemple : Mise en placeEntre les balises <HEAD> et </HEAD> :
<script type="text/javascript">
// <![CDATA[
var list0 = new Array();
var list1 = new Array();
var list2 = new Array();
list0[0] = new Option();
list0[0].text = "-";
list0[0].value = null;
list1[0] = new Option();
list1[0].text = "Paris";
list1[0].value = "Paris";
list1[1] = new Option();
list1[1].text = "Lille";
list1[1].value = "Lille";
list1[2] = new Option();
list1[2].text = "Lyon";
list1[2].value = "Lyon";
list1[3] = new Option();
list1[3].text = "Toulouse";
list1[3].value = "Toulouse";
list1[4] = new Option();
list1[4].text = "Bordeaux";
list1[4].value = "Bordeaux";
list2[0] = new Option();
list2[0].text = "Madrid";
list2[0].value = "Madrid";
list2[1] = new Option();
list2[1].text = "Vigo";
list2[1].value = "Vigo";
list2[2] = new Option();
list2[2].text = "Andorra";
list2[2].value = "Andorra";
list2[3] = new Option();
list2[3].text = "Valencia";
list2[3].value = "Valencia";
function chgPays(form)
{
//Raz de la liste des options Ville
for (i = 0; i < form.Ville.options.length*3; i++) {form.Ville.options.length--;}
//Recherche de l'index de la selection Pays
var pays = form.Pays.selectedIndex;
switch(pays)
{
case 0:
for (i = 0; i < list0.length*3; i++) {form.Ville.options[i] = list0[i];}
break;
case 1:
for (i = 0; i < list1.length*3; i++) {form.Ville.options[i] = list1[i];}
break;
case 2:
for (i = 0; i < list2.length*3; i++) {form.Ville.options[i] = list2[i];}
break;
}
}
// ]]>
</script>
Balise <BODY> : Rien Entre les balises <BODY> et </BODY> :
<form action="#" id="form">
<div>
<span>Pays :</span>
<select name="Pays" onchange="chgPays(this.form)">
<option value="">-</option>
<option>France</option>
<option>Espagne</option>
</select>
<span>Ville :</span>
<select name="Ville">
<option value="">-</option>
</select>
<input type="submit" />
</div>
</form>
[0] commentaires - Voir/Editer |