Тип list поля форми Joomla

listТип list поля форми являє собою список, що розкривається, або список користувацьких записів. Якщо поле має збережене значення, воно вибирається при першому завантаженні сторінки. Інакше вибирається значення за налаштуванням (якщо є).

  • type (обов'язково) - має бути list.
  • name (обов'язково) – унікальне ім'я поля.
  • label (обов'язково) (дозволяється перекладати) – описовий заголовок поля.
  • default (необов'язково) – значення елемента списку за налаштуванням.
  • description (необов'язково) (дозволяється перекладати) - це текст, який буде відображатися як спливаюча підказка, коли користувач наводить вказівник миші на список, що розкривається.
  • class (необов'язково) – це ім'я класу CSS для поля форми HTML. Якщо цей параметр не вказано, за налаштуванням використовується «inputbox».
  • multiple (необов'язково) - чи можна вибрати кілька елементів одночасно (true або false).
  • required (необов'язковий) - якщо встановлено значення true, перша опція поля має бути порожньою, див. останній приклад.
  • useglobal (необов'язково) - якщо встановлено значення true, буде відображатися значення, встановлене у глобальній конфігурації, якщо воно знайдено в базі даних.

Єлемент XML <field> повинен містити один або кілька елементів <option>, котрі визначають елементи списку. Текст між тегами <option> і </option> - це те, що буде відображатися в списку, що розкривається і є рядком, що перекладається. Тег <option> приймає наступний аргумент:

  • value (обов'язково) - це значення, яке буде збережено для поля, якщо вибрано цей елемент.
  • requires (необов'язково) Значення: мультимовність, можна використовувати асоціації та адмінмову.

Порада 1: Не забудьте закрити визначення поля за допомогою </field>.

Порада 2: Спочатку додайте параметр без значення з текстом типу "Виберіть варіант". В іншому випадку, у разі обов'язкового поля, перший варіант зі значенням вибирається автоматично (тобто без вибору користувача). Цей текст зазвичай видно користувачам до того, як вони клацнути по списку, що розкривається.

Порада 3: Деякі значення для поля name зарезервовані, тому не використовуйте їх, щоб уникнути проблем. Один з них style.

Приклад 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>

Приклад XML визначення з обов'язковим значенням поля:

<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 для параметрів списку

Починаючи з Joomla 3.9.0, можна використовувати атрибут showon для тегів параметрів у полі списку.

Див. Документацію Showon.

Приклад визначення XML для двох полів списку

У цьому прикладі визначаються два поля списків: fielda і fieldb, де відображаємі параметри fieldb управляються вибором у 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 поля b відображається лише в тому випадку, якщо у полі а вибрана опція «TYPE_TEXT».
  • Option 2 поля b відображається лише в тому випадку, якщо у полі а вибрана опція «TYPE_TEXT» или «TYPE_TEXTAREA».
  • Option 1 і JNO поля fieldb завжди відображається.

Переглянути всі стандартні типи полів форми можна тут: https://d-nik.site/joomla-4/joomla-dlia-rozrobnykiv/standartni-tipi-poliv-formi

Джерело: https://docs.joomla.org/List_form_field_type

Main Menu