Lier 2 listes déroulantes [TITRE MODERE CAR PEU EXPLICITE]

Signaler
Messages postés
19
Date d'inscription
mercredi 12 octobre 2005
Statut
Membre
Dernière intervention
20 février 2006
-
Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
-
Salut la compagnie !
Encore une fois je requiert votre aide pour un problème que certains n'auront surement pas de mal à règler en moins de deux !

J'ai essayé auparavant de regarder les messages sur le forum ainsi que les tutoriaux mais j'arrive pas vraiment à y voir clair...
Alors, dans mon formulaire, j'ai deux listes déroulantes dont les données proviennent d'une base de données et deux deux tables différentes (une table par liste déroulante) :
1ère liste : table 'type' (num_type, nom_type)
2ème liste : table 'type_taille' (num_taille, nom_taille, num_type)

Aussi, j'aimerais relier les 2 listes déroulantes : lorsque je choisis un type, il m'affiche les tailles correspondantes dans la seconde liste. Ca m'est égal s'il faut recharger la page ou pas

Je sais que c'est avec la méthode getelementbyid mais pas moyen, je comprends pas du tout comment ça marche...si quelqu'un peut me donner une piste, ça serait bien cool !!
A bon entendeur....

Merci !

1 réponse

Messages postés
10840
Date d'inscription
lundi 24 février 2003
Statut
Modérateur
Dernière intervention
2 mars 2010
22
Hello,

cette question a été posée moultes fois sur ce forum :-)
Enfin...
Le plus simple reste sur un évènement onchange de ton 1er select, de soumettre le formulaire (this.form.submit() ou quelque chose comme ça). Tu peux aussi ne pas passer par un onchange, mais directement par un bouton submit tout simple. Cette soumission te permettra de faire la requête qui extraiera les éléments de ton 2d select.
Tu peux mettre chacun de tes select dans 1 formulaire différent, ou dans le même, ça ne pose pas de problème. Simplement, la soumission ramène sur la même page qui affiche ce formulaire, et avant l'affichage du formulaire, tu vérifies si le formulaire a été soumis via l'action visant à renouveler la 2de liste déroulante. Si oui, tu récupères la valeur choisie, et tu fais ta requête en fonction de cette valeur. Puis tu affiches ton formulaire, avec tes 2 listes, et en construisant ta 2de liste en fonction de la requête effectutée auparavant.
Tu peux aussi passer par des requêtes xmlhttp pour que cette soumission se fasse de manière invisible pour l'utilisateur.