Formulaire Dynamique
Résolu
xxkirastarothxx
Messages postés
380
Date d'inscription
Statut
Membre
Dernière intervention
-
xxkirastarothxx Messages postés 380 Date d'inscription Statut Membre Dernière intervention -
xxkirastarothxx Messages postés 380 Date d'inscription Statut Membre Dernière intervention -
Bonjour à tous
J'essaye de faire un formulaire d'inscription Dynamique, ou après que l'utilisateur est choisie, par exemple, sa région dans un select, le select suivant ne propose que les départements de cette Région.
Je suis persuadé qu'il faut du javascript, voir de l'ajax pour faire ça, mais je n'y connais quasiment rien.
Quelqu'un pourrait il m'épingler/ m'aider SVP ? :)
Merci d'avance.
J'essaye de faire un formulaire d'inscription Dynamique, ou après que l'utilisateur est choisie, par exemple, sa région dans un select, le select suivant ne propose que les départements de cette Région.
Je suis persuadé qu'il faut du javascript, voir de l'ajax pour faire ça, mais je n'y connais quasiment rien.
Quelqu'un pourrait il m'épingler/ m'aider SVP ? :)
Merci d'avance.
A voir également:
- Formulaire Dynamique
- Whatsapp formulaire opposition - Guide
- Tableau croisé dynamique - Guide
- Formulaire de réclamation facebook - Guide
- Exemple tableau croisé dynamique télécharger - Télécharger - Tableur
- Formulaire de reclamation instagram - Guide
6 réponses
oui effectivement c'est du javascript :
et voila, remplace simplement les '..' et les '(texte,valeur)' par tes valeurs et le tour est joué ;)
//DANS LA BALISE HEAD DE TA PAGE <script language="Javascript"> function aff_departements() { document.getElementById('selDepartements').disabled = false; switch(document.getElementById('selRegions').options[document.getElementById('selRegions').options.selectedIndex].value) { case '..' : document.getElementById('selDepartements').options.length = [nombre de departements a afficher]; document.getElementById('selDepartements').options[0] = new Option(texte,valeur); document.getElementById('selDepartements').options[1] = new Option(texte,valeur); etc... break; case '.. : ... break; etc... } </script> //DANS LE BODY <select name="regions" id="selRegions" "onchange="aff_departements()"> <option value="..">...</option> <option value="..">...</option> <option value="..">...</option> etc... </select> <select name="departements" id="selDepartements" disabled="true"></select>
et voila, remplace simplement les '..' et les '(texte,valeur)' par tes valeurs et le tour est joué ;)
Ouaip! Le php c'est pas un problème mais là je vois pas comment faire.
Enfin si, mais ça nécessite de recharger la page à chaque nouvelle question c'est pas super esthétique.
y'a pas besoin de javascript, genre avec un onclic ou onover?
quelquechose comme ça: (attention ça va être très moche, je vais faire du javascript avec du sql xD)
onclic="SELECT * FROM departement WHERE region = **"
Edit, ah une nouvelle réponse le temps d'écrire la mienne, je regarde ça :)
Enfin si, mais ça nécessite de recharger la page à chaque nouvelle question c'est pas super esthétique.
y'a pas besoin de javascript, genre avec un onclic ou onover?
quelquechose comme ça: (attention ça va être très moche, je vais faire du javascript avec du sql xD)
onclic="SELECT * FROM departement WHERE region = **"
Edit, ah une nouvelle réponse le temps d'écrire la mienne, je regarde ça :)
j'ai ça pour le moment, mais il y a quelques petites choses qui clochent:
1] malgrès le disabled='false' dans le js, le select reste en désactive, même après la sélection d'une région.
2] si je met directement disabled='false' dans le html (dans le select donc) le select est toujours désactivé
3] si j'enlève l'option disabled, j'essaye le form, je sélectionne une région, mais aucun département n'est ajouter au select suivant.
Un peu d'aide ? :D
Edit: j'ai changer le numero des option[1] (j'avais pas vu) par les bon numeros, mais aucun changement
Edit2: rajout des <form action='' method='post'> et </form>: toujours rien.
1] malgrès le disabled='false' dans le js, le select reste en désactive, même après la sélection d'une région.
2] si je met directement disabled='false' dans le html (dans le select donc) le select est toujours désactivé
3] si j'enlève l'option disabled, j'essaye le form, je sélectionne une région, mais aucun département n'est ajouter au select suivant.
Un peu d'aide ? :D
<head> <script language="Javascript"> function aff_departements() { document.getElementById('selDepartements').disabled = false; switch(document.getElementById('selRegions').options[document.getElementById('selRegions').options.selectedIndex].value) { case '01' : document.getElementById('selDepartements').options.length = [2]; document.getElementById('selDepartements').options[0] = new Option(Bas-Rhin,67); document.getElementById('selDepartements').options[1] = new Option(Haut-Rhin,68); break; case '02' : document.getElementById('selDepartements').options.length = [5]; document.getElementById('selDepartements').options[0] = new Option(Dordogne,24); document.getElementById('selDepartements').options[1] = new Option(Gironde,33); document.getElementById('selDepartements').options[1] = new Option(Landes,40); document.getElementById('selDepartements').options[1] = new Option(Lot-et-Garonne,47); document.getElementById('selDepartements').options[1] = new Option(Pyrénées-Atlantiques,64); break; case '03' : document.getElementById('selDepartements').options.length = [4]; document.getElementById('selDepartements').options[0] = new Option(Allier,03); document.getElementById('selDepartements').options[1] = new Option(Cantal,15); document.getElementById('selDepartements').options[1] = new Option(Haute-Loire,43); document.getElementById('selDepartements').options[1] = new Option(Puy-de-Dôme,63); break; } </script> </head> <body> <select name="regions" id="selRegions" onchange="aff_departements()"> <option value="">Region</option> <option value="01">Alsace</option> <option value="02">Aquitaine</option> <option value="03">Auvergne</option> </select> <select name="departements" id="selDepartements" disabled="true"> <option value="">Departement</option> </select> </body>
Edit: j'ai changer le numero des option[1] (j'avais pas vu) par les bon numeros, mais aucun changement
Edit2: rajout des <form action='' method='post'> et </form>: toujours rien.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bjr
Rien d'étonnant à ce que ça ne fonctionne pas vu le nombre d'erreurs de syntaxe ! ;-)
Essai comme ceci
PhP
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...
Rien d'étonnant à ce que ça ne fonctionne pas vu le nombre d'erreurs de syntaxe ! ;-)
Essai comme ceci
<html> <head> <script language="Javascript"> function aff_departements() { var liste = document.getElementById('selDepartements'); liste.disabled = false; liste.options.length = 0; var i = 0; switch (document.getElementById('selRegions').options[document.getElementById('selRegions').options.selectedIndex].value) { case '00' : liste.options[i++] = new Option("Département",""); liste.disabled = true; break; case '01' : liste.options[i++] = new Option("Bas-Rhin",67); liste.options[i++] = new Option("Haut-Rhin",68); break; case '02' : liste.options[i++] = new Option("Dordogne",24); liste.options[i++] = new Option("Gironde",33); liste.options[i++] = new Option("Landes",40); liste.options[i++] = new Option("Lot-et-Garonne",47); liste.options[i++] = new Option("Pyrénées-Atlantiques",64); break; case '03' : liste.options[i++] = new Option("Allier",03); liste.options[i++] = new Option("Cantal",15); liste.options[i++] = new Option("Haute-Loire",43); liste.options[i++] = new Option("Puy-de-Dôme",63); break; } } </script> </head> <body> <select name="regions" id="selRegions" onchange="aff_departements()"> <option value="00">Region</option> <option value="01">Alsace</option> <option value="02">Aquitaine</option> <option value="03">Auvergne</option> </select> <select name="departements" id="selDepartements" disabled="true"> <option value="">Departement</option> </select> </body> </html>--
PhP
Il y a 10 types de personnes dans le monde : ceux qui comprennent le binaire et les autres ...