Поскольку вы используете Pjax
для поискового фильтра с DataTable
и перезагрузите Pjax
, удаляется инициализация плагина DataTable из основного контейнера.
Вы должны использовать События , предоставляемые плагином Pjax, и для вашей текущей ситуации вы можете использовать
pjax:complete
: всегда срабатывает после ajax, независимо отрезультата.
Таким образом, вы можете связать событие, чтобы перезагрузить скрипт DataTable
в контейнере, как показано ниже.
$js=<<< JS
$(document).on('pjax:complete', function() {
$('#myTable').DataTable();
});
JS;
$this->registerScript($js,\yii\web\View::POS_READY);
Надеюсь, это поможет.