Projet

Général

Profil

Development #53763

Rafraichissement d'un champ liste à choix multiples en fonction d'un champ liste (sur une même page)

Ajouté par Emmanuel Cazenave il y a presque 3 ans. Mis à jour il y a presque 2 ans.

Statut:
Fermé
Priorité:
Normal
Assigné à:
Version cible:
-
Début:
05 mai 2021
Echéance:
% réalisé:

0%

Temps estimé:
Patch proposed:
Oui
Planning:
Non

Description

Un champ liste form_var_foo et juste en dessous un champ liste à choix multiple form_var_bar qui utilise une source de donnée dans l'URL de laquelle il y a {{form_var_foo_raw}}, on aimerait que les choix de form_var_bar soient rafraîchis lorsque ça change coté form_var_foo.


Fichiers


Demandes liées

Lié à w.c.s. - Development #48386: liste à choix multiples dynamiqueFermé08 novembre 2020

Actions

Révisions associées

Révision 40e934a9 (diff)
Ajouté par Frédéric Péters il y a presque 2 ans

forms: add dynamic source support to items field (#53763)

Historique

#2

Mis à jour par Emmanuel Cazenave il y a presque 3 ans

Ça duplique peut-être #48386, je ne suis pas sûr.

#3

Mis à jour par Frédéric Péters il y a presque 3 ans

  • Statut changé de Nouveau à Fermé

Totalement.

#4

Mis à jour par Frédéric Péters il y a presque 3 ans

#6

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

  • Statut changé de Fermé à Nouveau

Je réouvre celui-ci puisque #48386 concerne désormais uniquement le filtrage dynamique par des champs listes à choix multiple.

#7

Mis à jour par Benjamin Dauvergne il y a plus de 2 ans

Je pose ça là ayant commencé à bosser le sujet sur #48386. À la réalisation je me suis surtout aperçu que le fonctionnement de CheckboxesWidget posait un souci, les id des valeurs sont perdus remplacé par leur ordre implicite dans la source de donnée via l'attribut name de l'élément HTML (pour les listes implicites, pour les sources de donnée l'id est utilisé, mais ça rend le comportement non uniforme). Ça rend difficile la conservation de la sélection actuelle (ici je contourne en me basant sur le label).

Plutôt que le rendu suivant :

<label>{{ items[0].text }}</label><input type="checkbox" name="f0$element1" value="yes">

il faudrait quelque chose comme cela:
<label>{{ items[0].text }}</labl><input type="checkbox" name="f0" value="{{ items[0].id }}">

Je ne pense pas que ce serait difficile à faire vu le code actuel.

#8

Mis à jour par Frédéric Péters il y a plus de 2 ans

  • Patch proposed changé de Oui à Non
#10

Mis à jour par Frédéric Péters il y a plus de 2 ans

#11

Mis à jour par Frédéric Péters il y a plus de 2 ans

#18

Mis à jour par Frédéric Péters il y a environ 2 ans

  • Priorité changé de Normal à Haut
#19

Mis à jour par Pierre Cros il y a presque 2 ans

  • Priorité changé de Haut à Normal
#21

Mis à jour par Frédéric Péters il y a presque 2 ans

Surtout côté js, en mode affichage "cases à cocher" recréer le markup présent dans le gabarit, en mode "autocomplétion" on peut (presque) simplement utiliser le code de liste simple, qui remplit le <select>.

À noter qu'on n'a pas pour l'autocomplétion sur ce champ (select2 multi) de gestion jsonp etc. qu'on reste limités à des listes relativement courtes.

#22

Mis à jour par Lauréline Guérin il y a presque 2 ans

  • Statut changé de Solution proposée à Solution validée
#23

Mis à jour par Frédéric Péters il y a presque 2 ans

  • Statut changé de Solution validée à Résolu (à déployer)
commit 40e934a92c77893a956800d97da5e6c108545bb9
Author: Frédéric Péters <fpeters@entrouvert.com>
Date:   Sat Jul 2 12:20:44 2022 +0200

    forms: add dynamic source support to items field (#53763)
#24

Mis à jour par Transition automatique il y a presque 2 ans

  • Statut changé de Résolu (à déployer) à Solution déployée
#25

Mis à jour par Transition automatique il y a plus d'un an

Automatic expiration

Formats disponibles : Atom PDF