Вы здесь

Почему не срабатывает autosubmit в Better Exposed Filters при принудительном вызове Drupal.attachBehaviors()?

0

Подобную тему поднимал ранее - http://dru.io/question/8547

о проблеме: на сайте реализованы ajax переходы с помощью barba.js. После перехода на страницу не подрубаются все скрипты ядра. (сейчас меня интересует ajax autosubmit в Better Exposed Filters)

В посте ранее, был послан изучать мат часть по Drupal.attachBehaviors, изучил, протестил, обертывая свой код в бехавиор, и вызове Drupal.attachBehaviors($(container), Drupal.settings); (где $(container) контекст новой страницы) при срабатывании ajax не подхватываются скрипты Better Exposed Filters, а мои, обернутые в Behaviors срабатывают. То есть, вызов Behaviors осуществляется успешно, но вот скрипты Better Exposed Filters все равно не подхватываются при вызове Drupal.attachBehaviors($(container), Drupal.settings); так же не срабатывают если менять контектс Drupal.attachBehaviors(document, Drupal.settings);

Как вы думаете, чем вызвано такое поведение? Drupal.attachBehaviors вызываю когда DOM новой страницы готов

Может для Better Exposed Filters нужен какой то свой вызов?

UPD: не работает только автосабмит, переходы по фильтрам Better Exposed Filters срабатывают

UPD2: если смотреть console.log(Drupal.settings); при обычном переходе и используя ajax то содержимое разнится:

переход без Ajax (автосабмит работает):

переход с Ajax(автосабмит не работает):

Версия Drupal: 
7.x
Категория: 
AJAX
Связанные проекты: 
Better Exposed Filters
Вопрос задан 29.08.2017 - 10:02
Аватар пользователя im
im
32

короче сделал костыль - подменил кнопку сабмита на линк, который get'om отправляет введенное в input, работает.

Комментарий оставлен 29.08.2017 - 10:48

Ответы

-1

бихайва часто не спасает, используйте .on('DOMNodeInserted' ...

Ответ дан 31.08.2017 - 08:57