0290f8195c97a33085464c3d09d5e6c18721bf71
[yaffs-website] / web / core / modules / system / tests / modules / ajax_forms_test / src / Form / AjaxFormsTestAjaxElementsForm.php
1 <?php
2
3 namespace Drupal\ajax_forms_test\Form;
4
5 use Drupal\Core\Form\FormBase;
6 use Drupal\ajax_forms_test\Callbacks;
7 use Drupal\Core\Form\FormStateInterface;
8
9 /**
10  * Form builder: Builds a form that has each FAPI elements triggering a simple
11  * Ajax callback.
12  */
13 class AjaxFormsTestAjaxElementsForm extends FormBase {
14
15   /**
16    * {@inheritdoc}
17    */
18   public function getFormId() {
19     return 'ajax_forms_test_ajax_elements_form';
20   }
21
22   /**
23    * {@inheritdoc}
24    */
25   public function buildForm(array $form, FormStateInterface $form_state) {
26     $callback_object = new Callbacks();
27
28     $form['date'] = [
29       '#type' => 'date',
30       '#ajax' => [
31         'callback' => [$callback_object, 'dateCallback'],
32       ],
33       '#suffix' => '<div id="ajax_date_value">No date yet selected</div>',
34     ];
35
36     $form['datetime'] = [
37       '#type' => 'datetime',
38       '#ajax' => [
39         'callback' => [$callback_object, 'datetimeCallback'],
40         'wrapper' => 'ajax_datetime_value',
41       ],
42     ];
43
44     $form['datetime_result'] = [
45       '#type' => 'markup',
46       '#markup' => '<div id="ajax_datetime_value">No datetime selected.</div>',
47     ];
48
49     return $form;
50   }
51
52   /**
53    * {@inheritdoc}
54    */
55   public function submitForm(array &$form, FormStateInterface $form_state) {}
56
57 }