Цепляем js-скрипт после ajax-вызова в Drupal 7

После выполнения загрузки данных по ajax, может потребоваться инициализация скриптов для только что полученного куска HTML.

Как данный механизм реализован в Drupal 7?

По большому счету, требуется добавить js код в секцию success после вызова /system/ajax. Такой хук предусмотрен. Событие называется ‘ajaxSuccess’, его нужно связать с контейнером, контент которого обновляется в результате запроса.

К примеру, рассмотрим практическую задачу — зацепиться к обновлению содержимого веб-формы (модуль webform), которая настроена на использование ajax (модуль webform ajax).

Для ajax-овых форм модуль добавляет в верстку дополнительный контейнер:

Именно он и обновляется при отправке данных.

Зацепка реализуется добавлением хука в глобальный js объект CMS Drupal в перечень поведения (behaviors):

В моём случае код ноды с формой webform был 1000.

У статьи появилось продолжение

Мало букафф? Читайте есчо !

Интеграция Usercentrics CMP в Drupal

Октябрь 21, 2021 г.

Интеграция не сложна в принципе, т.к. Usercentrics CMP ставит задачу упростить сбор разрешений пользователя и управление скриптами на основе данных разрешений. Первым шагом интеграции является подключение скриптов CMP в заголовок (head) страницы ...

Читать

Выгрузка словарей таксономии в csv из Drupal

Декабрь 27, 2016 г.

Понадобилась выгрузка всей кучи словарей в текстовом виде. Не для импорта, а так: редакторам на сайте не удобно по словарям ползать и смотреть, что есть, а чего нет. Дело, конечно, вкуса. Посмотрел для начала готовые модули. Все они заточены под ...

Читать

Генерируем UUID прямо в шаблоне

Ноябрь 6, 2025 г.

Понадобилось мне сгенерировать уникальный код, чтобы привязать уникальные стили к конкретному контейнеру. Функция random в twig чаще всего достаточна для этой цели. Но хотелось пойти немного дальше, и вытащить сервис генерации UUID. Это нам приводит ...

Читать

Заполнение поля формы через GET в Drupal 7

Июнь 23, 2011 г.

Рассмотрим случай, когда нужно предварительно заполнить поле (ряд полей) формы при переходе на страницу с этой формой в Drupal. Данные для инициализации передаём как часть uri (т.е. метод GET). Подход проверен для Drupal 7. [crayon-6971c8794b48d280829218/]

Читать
 

Комментарии к «Цепляем js-скрипт после ajax-вызова в Drupal 7»

Понравилась статья? Есть вопросы? - пишите в комментариях.



Комментарий: