Type de champ de formulaire list

From Joomla! Documentation

This page is a translated version of the page List form field type and the translation is 78% complete.

Other languages:
English • ‎español • ‎français • ‎Nederlands

Le type de champ de formulaire list fournit une liste déroulante ou des cases à cocher d'entrées prédéfinies et personnalisées. Si le champ a une valeur enregistrée, cette option est sélectionnée lors du premier chargement de la page. Sinon, la valeur par défaut (le cas échéant) est sélectionnée.

Params.list.jpg
  • type (obligatoire) doit être "list".
  • name (nom) (obligatoire) est le nom unique du champ.
  • label (étiquette) (obligatoire) (traduisible) est le titre descriptif du champ.
  • default (par défaut) (facultatif) est la valeur de la liste d'éléments par défaut.
  • description (facultatif) (traduisible) est le texte qui s'affichera dans une info-bulle lorsque l'utilisateur passe sa souris sur la liste déroulante.
  • class (classe) (facultatif) est le nom de classe CSS pour le champ de formulaire HTML. Si non défini, 'inputbox' sera la valeur par défaut.
  • multiple (facultatif) si la valeur est définie sur multiple, cela autorise la possibilité de sélectionner plus d'un groupe d'utilisateurs à la fois (true ou false).
  • required (facultatif) si la valeur est définie sur true, la première option du champ devrait être vide. Consultez le dernier exemple.
  • useglobal (facultatif) lorsque ce paramètre est défini à true, la valeur définie dans la configuration globale est affichée, si elle est trouvée en base de données.

L'élément XML <field> doit inclure un ou plusieurs éléments <option> qui définissent les éléments de la liste. Le texte compris entre les balises <option> et </option> sera affiché dans la liste déroulante et la chaîne est traduisible. La balise <option> prend l'argument suivant :

  • value (valeur) (obligatoire) est la valeur qui sera enregistrée pour le champ si cet élément est sélectionné.
  • requires (facultatit) Valeurs possibles : multilanguage, associations et adminlanguage.

Astuce : n'oubliez pas de fermer la définition d'un champ avec </field>.
Astuce : ajouter tout d'abord une option sans valeur, avec un texte tel que "Sélectionnez une option". Sinon, dans le cas d'un champ obligatoire, la première option avec une valeur sera 'silencieusement' sélectionnée (c'est à dire sans de choix par l'utilisateur). Ce texte sera généralement vu par les utilisateurs avant de cliquer sur la liste déroulante.
Astuce : Certaines valeurs pour le champ "name" sont réservées et ne doivent pas être utilisées pour éviter les problèmes. Parmi elles : "style".

Exemple de définition de champ XML :

<field name="mylistvalue" type="list" default="" label="Select an option" description="">
  <option value="0">Option 1</option>
  <option value="1">Option 2</option>
</field>

Exemple de définition de champ XML avec une valeur de champ obligatoire :

<field name="mylistvalue" type="list" default="" required="true" label="Select an option" description="">
  <option value="">Please Select</option>
  <option value="0">Option 1</option>
  <option value="1">Option 2</option>
</field>

Showon attribute for list options

Since Joomla 3.9.0 one can use the showon attribute for option tags in a list field.

Example XML for two list fields fielda and fieldb where the displayed options of fieldb are controlled by selections in fielda

<field
    name="fielda"
    type="list"
    label="FIELDA_LABEL"
    description="FIELDA_DESC"
    >
    <option value="editor">TYPE_EDITOR</option>
    <option value="text">TYPE_TEXT</option>
    <option value="textarea">TYPE_TEXTAREA</option>
</field>

<field
    name="fieldb"
    type="list"
    label="FIELDB_LABEL"
    description="FIELDB_DESC"
    >
    <option value="0">JNO</option>
    <option value="1">Option 1</option>
    <option
	    showon="fielda:text,textarea"
	    value="2">Option 2</option>
    <option
	    showon="fielda:text"
	    value="3">Option 3</option>
</field>
  • "Option 3" of fieldb is only displayed if option "TYPE_TEXT" is selected in fielda.
  • "Option 2" of fieldb is only displayed if option "TYPE_TEXT" OR "TYPE_TEXTAREA" is selected in fielda.
  • "Option 1" and "JNO" of fieldb is always displayed.

Voir également