You are here

public function JavascriptStatesForm::buildForm in Drupal 8

Same name and namespace in other branches
  1. 9 core/modules/system/tests/modules/form_test/src/Form/JavascriptStatesForm.php \Drupal\form_test\Form\JavascriptStatesForm::buildForm()
  2. 10 core/modules/system/tests/modules/form_test/src/Form/JavascriptStatesForm.php \Drupal\form_test\Form\JavascriptStatesForm::buildForm()

Form constructor.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Return value

array The form structure.

Overrides FormInterface::buildForm

File

core/modules/system/tests/modules/form_test/src/Form/JavascriptStatesForm.php, line 25

Class

JavascriptStatesForm
Builds a simple form to test states.

Namespace

Drupal\form_test\Form

Code

public function buildForm(array $form, FormStateInterface $form_state) {
  $form['select'] = [
    '#type' => 'select',
    '#title' => 'select 1',
    '#options' => [
      0 => 0,
      1 => 1,
      2 => 2,
    ],
  ];
  $form['number'] = [
    '#type' => 'number',
    '#title' => 'enter 1',
  ];
  $form['textfield'] = [
    '#type' => 'textfield',
    '#title' => 'textfield',
    '#states' => [
      'visible' => [
        [
          ':input[name="select"]' => [
            'value' => '1',
          ],
        ],
        'or',
        [
          ':input[name="number"]' => [
            'value' => '1',
          ],
        ],
      ],
    ],
  ];
  return $form;
}