Liste déroulante html >php
Résolu/Fermé
mika2413
zeghad - 1 mai 2014 à 19:53
- Messages postés
- 19
- Date d'inscription
- dimanche 29 mai 2011
- Statut
- Membre
- Dernière intervention
- 5 octobre 2011
zeghad - 1 mai 2014 à 19:53
A voir également:
- Liste déroulante html >php
- Liste déroulante html >php ✓ - Forum - PHP
- Liste déroulante + tableaux PHP HTML ✓ - Forum - PHP
- Liste déroulante html avec lien ✓ - Forum - HTML
- Liste déroulante html javascript - Articles
- Liste déroulante html - Guide
4 réponses
avion-f16
Modifié par avion-f16 le 11/06/2011 à 22:05
- Messages postés
- 18740
- Date d'inscription
- dimanche 17 février 2008
- Statut
- Contributeur
- Dernière intervention
- 23 mai 2022
Modifié par avion-f16 le 11/06/2011 à 22:05
Salut,
« mais sans avoir besoin de cliquer »
La voilà la solution : Javascript
C'est assez simple à faire : pour chaque choix, tu crées un cadre (div) ayant comme id la valeur du choix auquel il correspond et contenant le champ et le texte.Voilà un exemple :
Ces cadres seront masqués à l'aide du CSS.
Sur la liste principale, lorsqu'on change d'option (onchange) :
- Masquer le div actuellement ouvert
- Récupérer la nouvelle valeur de la liste
- Récupérer l'élément ayant cette valeur comme id
- Changer la propriété CSS de cet élément.
La pensée mène le monde.
« mais sans avoir besoin de cliquer »
La voilà la solution : Javascript
C'est assez simple à faire : pour chaque choix, tu crées un cadre (div) ayant comme id la valeur du choix auquel il correspond et contenant le champ et le texte.Voilà un exemple :
<label for="maque_id">Marque :</label> <select name="marque" id="marque_id"> <option value="audi">Audi</option> <option value="bmw">BMW</option> <!-- ... --> </select> <div id="audi"> <label for="audi_modele_id">Modèle :</label> <select name="audi_modele" id="audi_modele_id"> <option value="a4">A4</option> <option value="rs6">RS6</option> <option value="r8">R8</option> <!-- ... -> </select> </div> <div id="bmw"> <label for="bmw_modele_id">Modèle :</label> <select name="bmw_modele" id="bmw_modele_id"> <option value="s3">Serie 3</option> <option value="s6">Serie 6</option> <option value="x5">X5</option> <!-- ... -> </select> </div>
Ces cadres seront masqués à l'aide du CSS.
Sur la liste principale, lorsqu'on change d'option (onchange) :
- Masquer le div actuellement ouvert
- Récupérer la nouvelle valeur de la liste
- Récupérer l'élément ayant cette valeur comme id
- Changer la propriété CSS de cet élément.
La pensée mène le monde.
mika2413
11 juin 2011 à 21:43
- Messages postés
- 19
- Date d'inscription
- dimanche 29 mai 2011
- Statut
- Membre
- Dernière intervention
- 5 octobre 2011
11 juin 2011 à 21:43
Merci beaucoup pour cette réponse si rapide.
Oui j'ai cherché un peu et je me suis vite rendu compte que js était la meilleure solution.
Je teste ça et je reposte ;-)
Oui j'ai cherché un peu et je me suis vite rendu compte que js était la meilleure solution.
Je teste ça et je reposte ;-)
mika2413
11 juin 2011 à 23:41
- Messages postés
- 19
- Date d'inscription
- dimanche 29 mai 2011
- Statut
- Membre
- Dernière intervention
- 5 octobre 2011
11 juin 2011 à 23:41
Bon, j'ai réussi, en tout cas merci beaucoup de m'avoir donné la méthode.
Je la poste pour les autres, ça peut toujours servir:
----------------------------------------------
Entre <head> et </head>
----------------------------------------------
<script language="javascript">
function changementType() {
var type = document.getElementById("id").value;
if (type == "liste_1") {
document.getElementById("1").style.display="block";
} else{
document.getElementById("1").style.display="none";
}
if (type == "liste_2"){
document.getElementById("2").style.display="block";
}else{
document.getElementById("2").style.display="none";
}
}
</script>
----------------------------------------------
Dans le <body>
----------------------------------------------
<select name="id" id="id" onchange="changementType();">
<option value="">Choisissez dans la liste</option>
<option value="liste_1">Titre 1</option>
<option value="liste_2">Titre 2</option>
</select>
<div id ="1" style="display:none">
Votre Texte <input type="text" name="nom_1" size="2"/>
Votre Texte<input type="text" name="nom_1_1" size="2"/>
</div>
<div id ="2" style="display:none">
Votre Texte<input type="text" name="nom_2" size="2"/>
Votre Texte<input type="text" name="nom_2_1" size="2"/>
</div>
Bien entendu, les formulaires dans les div sont à adapter en fonction des besoins de chacun ^^
Je la poste pour les autres, ça peut toujours servir:
----------------------------------------------
Entre <head> et </head>
----------------------------------------------
<script language="javascript">
function changementType() {
var type = document.getElementById("id").value;
if (type == "liste_1") {
document.getElementById("1").style.display="block";
} else{
document.getElementById("1").style.display="none";
}
if (type == "liste_2"){
document.getElementById("2").style.display="block";
}else{
document.getElementById("2").style.display="none";
}
}
</script>
----------------------------------------------
Dans le <body>
----------------------------------------------
<select name="id" id="id" onchange="changementType();">
<option value="">Choisissez dans la liste</option>
<option value="liste_1">Titre 1</option>
<option value="liste_2">Titre 2</option>
</select>
<div id ="1" style="display:none">
Votre Texte <input type="text" name="nom_1" size="2"/>
Votre Texte<input type="text" name="nom_1_1" size="2"/>
</div>
<div id ="2" style="display:none">
Votre Texte<input type="text" name="nom_2" size="2"/>
Votre Texte<input type="text" name="nom_2_1" size="2"/>
</div>
Bien entendu, les formulaires dans les div sont à adapter en fonction des besoins de chacun ^^
mrc pour l explication, mais si d apres la selection d un choix de la premiere liste
d autre liste appartient avec plusieurs elements extraits a partir d une base de donnees et un autre choix effectues pour avoir d autre liste contenant des elements apartir du choix selectione: exp section--->chapitre----> article
d autre liste appartient avec plusieurs elements extraits a partir d une base de donnees et un autre choix effectues pour avoir d autre liste contenant des elements apartir du choix selectione: exp section--->chapitre----> article