Re: saisie et options
Maïeul Rouquette <[email protected]>
| Newsgroups | gmane.comp.web.spip.user |
|---|---|
| Message-ID | <[email protected]> |
Le 17/03/2021 à 20:44, jo.baloo a écrit :
>
> bonjour,
>
> je voudrais faire apparaitre la saisie d'un champ nbcol que si le champ
> type est positionné dans une saisie radio à "mosaique"
>
> j'ai essayé
>
> [(#SAISIE{input,nbcol,obligatoire=non,defaut=3,afficher_si='@type@ IN
> mosaique'
> label=<:selection:champ_nbcol_label:>,
> explication=<:selection:champ_nbcol:> })]
>
> mais cela ne fonctionne pas, le champ apparait dans tous les cas,
>
> faut-il mettre du java script ?
>
>
les afficher_si ne marchent que pour les saisies déclarées en bloc sous
forme de tableau et appelé via #GENERER_SAISIES
voir ici
https://contrib.spip.net/Generation-de-saisies-conditionnelles-avec-afficher_si
Après il faut toujours aussi verifier tes saisies avec verifier_saisies
dans ta fonction verifier() en PHP.
DOnc le mieux est
1. De declarer tes saisies en full PHP, y compris verification et
afficher_si dans une fonction formulaires_xxx_saisies (ou xxx est le nom
du formulaire) au sein du fichier formulaires/formulaire_xxx.php
2. La plupart du temps tu te content d'un formulaire_xxx.html vide et
c'est bon c'est automagique
exemple de formulaire déclaré ainsi automagiquement
https://git.spip.net/spip-contrib-extensions/saisies/src/branch/master/formulaires/saisies_cvt.php
et avec ca
1. Tes afficher_si marcheront tout seuls
2. Tu pourra aussi avoir la verfication automatique de chaque saisie
(par exemple si obligatoire)