Рейтинг:0

Как заменить значение поля по умолчанию?

флаг cn

У меня есть специальный модуль.

введите описание изображения здесь Это функция form_alter:

 $ форма ['статья'] = [
    '#тип' => 'текстовое поле',
    '#вес' => -1,
    '#title' => t('Поиск продукта из Magento: '),
    '#autocomplete_route_name' => 'magento_drupal.autocomplete',
    '#ajax' => [
      'обратный вызов' => '_select_ajax_form',
      // 'обертка' => 'мой_уникальный_ид',
    ],
  ];

в _select_ajax_form функция, как я могу автоматически заполнить данные для полей «цена» и «артикул»?

цена число (целое) и артикул Текст (обычный, длинный).

Рейтинг:0
флаг in

Если у вас нет огромной внутренней логики для автозаполнения, вы можете сделать это с помощью гораздо более простого javascript в значении «#attributes». Вот пример моего кода:

$form['laufzeit_in_monaten'] = [
      '#тип' => 'число',
      '#title' => $this->t('Laufzeit в Монатене ('.$produkt->get('min_stk')->value.' - '.$produkt->get('max_stk')->value .')'),
      '#default_value' => пол($produkt->get('max_stk')->value/2.0),
      '#attributes' => массив('onchange' =>
        'document.getElementById("vollpreis").innerHTML = (document.getElementById("edit-laufzeit-in-monaten").value * document.getElementById("pprc").value).toFixed(2)'),
    ];

Но это только фронтенд. Очевидно, вам нужно проверить ввод позже в вашем бэкэнде.

Dong Pham avatar
флаг cn
Спасибо за ваше предложение. Но у меня огромная внутренняя логика, поэтому я не могу использовать js.
Dong Pham avatar
флаг cn
Я пробую № 9 в [ссылка] https://www.drupal.org/project/drupal/issues/1024962#comment-13261018, но не работает. Я не понимаю ['und'] и не могу установить значение для $form['field_name]['und']
Rainer Feike avatar
флаг in
Я думаю, что № 9 для D7 ...
Rainer Feike avatar
флаг in
Но вы можете настроить службу отдыха для своей огромной внутренней логики и по-прежнему использовать JS во внешнем интерфейсе.
Dong Pham avatar
флаг cn
Я это сделал. Я использовал «обертку» и «контейнер». Но друпал нужно обновить до версии 9.1.8. Версии ниже 9.1.8 не работают.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.