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

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

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

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

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

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

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

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

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

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

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

Wysiwyg для Drupal 7

Июнь 8, 2011 г.

Аналогичная статья у меня была для 6й версии. Особых проблем для семерки нет, но для тех, кому некогда думать, а надо "просто сделать", данное руководство. ...

Читать

Скрипт экспорта в базу публикаций Drupal

Март 1, 2016 г.

Когда заказывают переделать сайты с "историей", приходится перетаскивать имеющиеся публикации на новый сайт. Хочу поделиться некоторыми моментами, связанными ...

Читать

Добавляем в page cache зависимость от значения cookie

Март 4, 2025 г.

Модуль page_cache использует http_middleware, чтобы зацепиться за объект request и произвести кеширование страницы. Работает он для анонимных пользователей. ...

Читать

Вывод видео блока, используя форматтер модуля media_youtube

Май 18, 2017 г.

Ситуация, когда вы используете поле типа "Multimedia asset", создаваемое модулями media + media_youtube, и сохранили там ссылку на какое то видео с Youtube ...

Читать
 

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

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



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