22
Indiquez l’intérêt que vous portez à cette question
1

Construction de 2 select liés : help !

Bonsoir/jour, selon.
Je dois construire une page de recherches dans une table supplémentaire (spip_produits).
Cette recherche doit se passer en 2 temps, sur la même page :
1/ sélection de la catégorie (ici : manufacturer)
2/ sélection de la sous-catégorie (ici : famille)

Actuellement (voir ici page en développement), les 2 champs n’interagissent pas ensemble.

Je voudrais que quand on sélectionne un item dans le 1er menu déroulant, le deuxième se mette automatiquement à jour pour ne donner que les items qui lui sont rattachés.

Mais je n’y arrive pas !
J’arrive à le faire la 1ère fois, grâce à {manufacturer==#ENV{manufacturer}} dans ma 2ème boucle, mais bien évidemment ce tri reste
Je comprends bien qu’il doit y avoir rechargement de la page ou du formulaire ou que sais-je encore (ajax ?). Je ne sais pas si je dois séparer mes 2 selects ou les lier dans un même form, bref, je sèche.

Et donc j’appelle à l’aide en vous soumettant mon code actuel.

<form action="[(#ENV{action})]" method="get">

[(#ENV{action}|form_hidden)]
[<input type="hidden" name="lang" value="(#ENV{lang})" />]   

        <B_csvrecherchefab>
        <h4><:rech_fab:></h4>
        <select name="manufacturer" class="tailleselect">
            <option value=""> </option>
            <BOUCLE_csvrecherchefab(spip_produits){fusion manufacturer}{manufacturer !== 'manufacturer'}{manufacturer>''} >	
               [<option value="(#MANUFACTURER|textebrut|unique)" [(#ENV{manufacturer}|=={[(#MANUFACTURER|textebrut|supprimer_tags)]}?{"SELECTED"})]>[(#MANUFACTURER)]</option>]
	</BOUCLE_csvrecherchefab>
         </select>
        </B_csvrecherchefab>

<br /><br />

       <B_csvrecherchefam>
        <h4><:rech_fam:></h4>
        <select name="famille" class="tailleselect">
            <option value=""> </option>
            <BOUCLE_csvrecherchefam(spip_produits){famille !== 'famille'}{famille>''}{fusion famille}>
            [<option value="(#FAMILLE|unique)" [(#ENV*{famille}|=={[(#FAMILLE)]}?{"SELECTED"})]>
            [(#FAMILLE*)]
            </option>]
           </BOUCLE_csvrecherchefam>
        </select>
        </B_csvrecherchefam>

<br /><br />

        <input type="submit" class="btnsubmit" value="" title="<:info_rechercher:>" />

        </form>

Un grand merci à celui qui m’expliquera comment procéder ;-)