Problème de lien vers une URL
Résolu
yelem
Messages postés
85
Statut
Membre
-
yelem Messages postés 85 Statut Membre -
yelem Messages postés 85 Statut Membre -
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
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
A voir également:
- Problème de lien vers une URL
- Lien url - Guide
- Créer un lien pour partager des photos - Guide
- Verificateur de lien - Guide
- Clémence souhaite faire calculer automatiquement les prix de 30 produits dans trois devises. elle a déjà saisi une formule de calcul pour le tarif du premier produit dans la première devise. corrigez sa formule afin que recopiée vers le bas puis vers la droite, elle remplisse correctement tout le tableau. - Forum Excel
- Url masquée pour votre sécurité - Forum Réseaux sociaux
2 réponses
Tu fais deux <form></form>:
Met tes select à la place de ##formulaire 1## et ##formulaire 1##
<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##
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>
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>
En fait il y a 7 possibilité de choix donc autant d'URL à définir...