I’m trying to implement an ajax callback whenever language gets changed. Following code I have used:
public function buildForm(array $form, FormStateInterface $form_state) { $language = Drupal::languageManager()->getCurrentLanguage()->getId(); $langcode = $from_database->lid; $form['langcode'] = array( '#title' => $this->t('Language'), '#type' => 'language_select', '#default_value' => !empty($langcode) ? $langcode : $language, '#languages' => Language::STATE_ALL, '#ajax' => array( 'callback' => ::ajax_example_autocheckboxes_callback', 'wrapper' => 'checkboxes-div', ) , ); $form['checkboxes_fieldset'] = array( '#title' => t("Generated Checkboxes"), // The prefix/suffix provide the div that we're replacing, named by // #ajax['wrapper'] above. '#prefix' => '<div id="checkboxes-div">', '#suffix' => '</div>', '#type' => 'fieldset', '#description' => t('This is where we get automatically generated checkboxes'), ); } function ajax_example_autocheckboxes_callback($form, $form_state) { return $form['checkboxes_fieldset']; }
But ajax callback is not working. Suggest a way to implement ajax on language select.