Не стартует выполнения ajax запроса после применения filter pjax в GridView

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
terrarium volition
Сообщения: 99
Зарегистрирован: 2021.07.15, 21:22

Не стартует выполнения ajax запроса после применения filter pjax в GridView

Сообщение terrarium volition »

Всем доброго дня!

Столкнулся с такой ситуацией:
На странице есть:
1. GridView, в которой есть фильтрация полей с помощью Select2 kartik.
2. Кнопка в заголовке таблицы GridView

По нажатию на кнопку отправляется ajax запрос.
На этом этапе всё работает.

Если применить фильтрацию Select2, то она благополучно выполнится, но далее, если попытаться вызвать ajax по кнопке, то ничего не происходит, пока не перезагрузить страницу.

По поведению, получается, что, как буд-то, в момент pjax загрузки отваливается id кнопки, по которому происходит обработка нажатия на кнопку на стороне js : $('#id').click()

Подскажите, люди добрые, как подружить между собой pjax и ajax?
Как вы используете эти два инструмента на одной странице?
Спасибо.
terrarium volition
Сообщения: 99
Зарегистрирован: 2021.07.15, 21:22

Re: Не стартует выполнения ajax запроса после применения filter pjax в GridView

Сообщение terrarium volition »

Нашёл вот такой топик здесь:

Код: Выделить всё

https://yiiframework.ru/forum/viewtopic.php?t=43015
Понял, что дело в регистрации скриптов на странице, которая слетает во время pjax.
Но как это решить - не понятно.
Попробовал вставить регистрацию внутрь pjax(со своими параметрами, естественно):

Код: Выделить всё

<?php Pjax::begin(); ?>
<?php AppAsset::register($this); ?>
<?php Pjax::end(); ?>
Но безрезультатно.

Подскажите, пожалуйста, как правильно подключать js после pjax?
terrarium volition
Сообщения: 99
Зарегистрирован: 2021.07.15, 21:22

Re: Не стартует выполнения ajax запроса после применения filter pjax в GridView

Сообщение terrarium volition »

Вынес кнопку за пределы pjax, и ajax по кнопке работает всегда.
Получается, что js файлы регистрируются на странице правильно и дело в чём-то другом?
Запутался капитально, гуру, где же вы!
terrarium volition
Сообщения: 99
Зарегистрирован: 2021.07.15, 21:22

Re: Не стартует выполнения ajax запроса после применения filter pjax в GridView

Сообщение terrarium volition »

Пытаюсь добавить data-pjax:

Код: Выделить всё

Html::a('<i class="fa fa-trash"></i> Очистить каталог', '#', ['class' => 'btn btn-danger', 'id' => 'deleteButton', 'data-pjax' => 0])
Но результата это не даёт.
Ответить