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

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

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

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

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

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

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

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

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

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

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

Поддержка сайта на Drupal: зачем это нужно и как я с этим работаю

Май 21, 2025 г.

Drupal — мощная и гибкая система управления сайтом. Но без регулярной поддержки даже самый хорошо сделанный проект может прийти в запустение. В этой статье ...

Читать

Как изменить длину поля (max length) после создания, сохраняя данные

Май 15, 2018 г.

Друпал не позволяет менять длину текстового поля после создания. Функция field_update_field также нам не поможет - будет сгенерирована соответствующая ошибка, что поле уже содержит данные и изменить его длину нельзя. Это можно проделать вручную, зная ...

Читать

Настраиваем ЧПУ ссылки пейджера в Drupal 7

Июль 19, 2016 г.

Занимаюсь решением ряда SEO задач для сайта на Drupal. Одна из них связана с урлами, генерируемыми пейджером. На самом деле это комплекс задач, ...

Читать

Не появляется форма переиндексации на странице /admin/config/search/search-api/index/

Июль 25, 2024 г.

Если ваш view базируется на search API источнике данных, то важно, чтобы данные были проиндексированы. Но иногда форма переиндексации отсутствует на странице ...

Читать
 

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

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



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