Listes dépendantes
Bonjour. Aidez-moi.
Il y a un dictionnaire de taxonomie "équipes", avec des sous-niveaux "pays" et dans les pays, une liste de "villes", puis il y a des "quartiers".
Il faut créer 3 listes où l'on doit d'abord choisir un "pays"
en fonction du pays sélectionné, générer la liste des "villes", puis choisir une ville et générer
la liste des quartiers qui pourra également être sélectionnée.
Et surtout, il est important que lorsque le choix dans les listes 1 et 2 change, le contenu des listes
soit mis à jour. J'ai essayé de le faire avec Hierarchical Select, mais j'ai besoin que dans le nœud soient stockés 3 champs (et non le dernier) Pays, Ville, Quartier.
Parce qu'ils sont tous obligatoires !!! pour d'autres tris et manipulations avec les nœuds.
De plus, Hierarchical Select ne convient pas car on ne peut sélectionner que le premier niveau et c'est tout...
Il est probablement possible de forcer la sélection des 3 niveaux du dictionnaire, mais je dois quand même stocker quelque part toutes les valeurs énumérées "pays", "ville", "quartier"
Je vois une solution comme celle-ci
implémentation de listes dépendantes
créer 3 menus déroulants du type de matériel requis.
Créer un dictionnaire de taxonomie avec l'arbre nécessaire Pays-Ville-Quartier
apporter des modifications au type_materiel--node.tpl.php
attendre le chargement de la page.
Remplir la première liste des pays à partir de l'arbre de taxonomie, (faire une sélection de 1er niveau)
ensuite, écrire un hook pour intercepter le choix dans la 1ère liste
qui, lorsqu'il est déclenché, remplira la 2ème liste avec les termes de deuxième niveau dont le parent est l'élément sélectionné dans la première liste.
En résumé, il faut écrire 2 hooks pour changer le choix dans la 1ère et la 2ème liste
Que faut-il pour écrire ces hooks.
Après cela, il faut permettre d'ajouter de nouveaux termes (dans les listes 2 et 3) directement depuis le formulaire.
Mais je ne sais pas comment tout cela écrire
s'il vous plaît donnez une réponse aussi claire que possible.
Cette question préoccupe de nombreux débutants et je n'ai trouvé nulle part de réponse concrète pour une telle implémentation.
- Se connecter ou s'inscrire pour publier un commentaire