Problème de lien vers une URL

Résolu
yelem Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   -  
yelem Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous.

Voilà, je voudrais réaliser deux menus déroulants pour une page web, les choix du second dépendant du choix du premier. Une fois les sélections réalisées, il y aurai une redirection vers des URL (différentes selon les choix bien sûr). Mon problème est que je n'arrive pas à trouver où mettre les différentes URL dans mon code. Aidez moi s'il vous plais.

Voici mon code :

<html>
<title>liste déroulante dynamique</title>
<head>
<script language="Javascript" type="text/javascript" >
function choix(formulaire)
{
var j;
var i = formulaire.boite1.selectedIndex;
if (i == 0)
for(j = 1; j <4; j++)
formulaire.boite2.options[j].text="";


else{
switch (i){
case 1 : var text = new Array( "Vallée du Gier","Vallée de l'Ondaine","Plaine du Forez","Pilat");
break;
case 2 : var text = new Array("Gare de Châteaucreux","La Terrasse","Bellevue","");
break;

case 3 : var text = new Array("Gare de Châteaucreux","La Terrasse","Bellevue","");
break;
}

for(j = 0; j<4; j++)
formulaire.boite2.options[j+1].text=text[j];
}
formulaire.boite2.selectedIndex=0;
}
</script>
</head>
<body>
<form name="formulaire">
<select name="boite1" onChange="choix(this.form)">
<option selected>...........Choisissez un moyen de locomotion...........</option>
<option>Voiture</option>
<option>Transports en commun</option>
<option>Piéton</option>



</select>

<select name="boite2">
<option selected>...........Choisissez un point de départ...........</option>
<option></option>
<option></option>
<option></option>
<option></option>
</form>
</select>
</body>
</html>

Merci pour votre aide

2 réponses

arthezius Messages postés 3538 Date d'inscription   Statut Membre Dernière intervention   475
 
Tu fais deux <form></form>:

<form name="formulaire" method="post" action="page1.php">
##formulaire 1##
</form>

<form name="formulaire" method="post" action="page2.php">
##formulaire 2##
</form>

Met tes select à la place de ##formulaire 1## et ##formulaire 1##
0
yelem Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   23
 
Heu... Je les mets où ? Désolé je suis novice en la matière.
En fait il y a 7 possibilité de choix donc autant d'URL à définir...
0
yelem Messages postés 74 Date d'inscription   Statut Membre Dernière intervention   23
 
J'ai finalement trouvé comment faire avec une méthode plus satisfaisante. Je la met si ça peut intéresser quelqu'un et je met "Résolu".

Bonne soirée.

<body>
<form name="dynamiccombo" align="center">
<select name="stage2" size="1" onChange="displaysub()">
<option value="#"></option>
<option value="#"></option>
<option value="#"></option>
<option value="#"></option>
</select>

</form>
<SCRIPT language="JavaScript" title="G1SCRIPT">

<!--
var category=new Array()
category[0]=new Option("Choix du moyen de locomotion", "") //Ligne pour le choix du moyen de locomotion
category[1]=new Option("Voiture", "combo1")
category[2]=new Option("Transport en commun", "combo2")
category[3]=new Option("Piéton", "combo3")

var combo1=new Array()
combo1[0]=new Option("Choix du lieu de départ","") //Ligne pour le choix du lieu de départ
combo1[1]=new Option("Plaine du Forez","Plaine du Forez.html")
combo1[2]=new Option("Vallée du Gier","Lyon.html")
combo1[3]=new Option("Vallée de l'Ondaine","Firminy.html")
combo1[4]=new Option("Pilat","Pilat.html")
combo1[5]=new Option("Retour","") //Ligne pour un retour au menu précédent

var combo2=new Array()
combo2[0]=new Option("La Terrasse","La Terrasse.html") //Ligne pour le choix du lieu de départ
combo2[1]=new Option("Bellevue","Bellevue.html")
combo2[2]=new Option("Châteaucreux","Châteaucreux.html")
combo2[3]=new Option("Retour","") //Ligne pour un retour au menu précédent

var combo3=new Array()
combo3[0]=new Option("La Terrasse","La Terrasse.html") //Ligne pour le choix du lieu de départ
combo3[1]=new Option("Bellevue","Bellevue.html")
combo3[2]=new Option("Châteaucreux","Châteaucreux.html")
combo3[3]=new Option("Retour","") //Ligne pour un retour au menu précédent

var curlevel=1
var cacheobj=document.dynamiccombo.stage2
function populate(x){
for (m=cacheobj.options.length-1;m>0;m--)
cacheobj.options[m]=null
selectedarray=eval(x)
for (i=0;i<selectedarray.length;i++)
cacheobj.options[i]=new Option(selectedarray[i].text,selectedarray[i].value)
cacheobj.options[0].selected=true
}
function displaysub(){
if (curlevel==1){
populate(cacheobj.options[cacheobj.selectedIndex].value)
curlevel=2
}
else
gothere()
}
function gothere(){
if (curlevel==2){
if (cacheobj.selectedIndex==cacheobj.options.length-1){
curlevel=1
populate(category)
}
else
location=cacheobj.options[cacheobj.selectedIndex].value
}
}


</SCRIPT>
0