Pjax перезагружает страницу или не работает вовсе при использовании фильтра GridView в модальном окне

Есть страница, которая подгружается через ajax:

$.get('/test/show-window', {params: params}, response => {
    if (response.error) {
        bootbox.alert(response.error.message);

        return false;
    }

    let modal = $('#my-modal');
    modal.find('.modal-body').html(response);
    modal.modal('show');
});

В нём есть простой код:

<?php
    Pjax::begin([
            'id' => 'pjax-1',
            'enablePushState'=>false,
            'enableReplaceState' => false,
            'options' => ['data-request-url' => Yii::$app->request->url]
    ]);
    
    $gridColumns = ['name'];

    echo GridView::widget([
        'id' => 'grid-view-1',
        'dataProvider' => $dataProvider,
        'columns' => $gridColumns,
        'filterModel' => $searchModel,
        'summary' => '',
    ]);
    
     Pjax::end();
 ?>

В итоге при вводе чего-либо в поле фильтра, происходит редирект на ту же страницу (в параметрах запроса отсутствует указание контейнера почему-то) или вовсе не работает. При этом сортировка и пагинация отрабатывает корректно (видимо из-за наличия ссылок в них....Но если Gridview располагать не в модальном окне, то у него фильтры работают же). Почему так происходит и как лечить?

  1. Метод возвращает только html. Не редирект.

  2. Timeout прописывал и бесконечный в том числе.

  3. Идентификаторы Pjax и GridView - разные

  4. При этом сортировка работает нормально

  5. Пробовал и такое триггерить в самом начале

     let reloadPjax = function(url, container) {
         $.pjax.reload({
             url: url,
             container: container,
             data       : {},
             push       : false,
             replace    : false,
             type : 'GET'
         });
     };
    

Так же в окне может быть вот такая конструкция:

<?php $form = ActiveForm::begin([
    'id' => 'add-form',
    'options' => [
        'class' => 'add-node-form',
        'data-pjax' => 1
    ],
    'action' => '/test/add?type=testElement'
]); ?>

<?= $form->field($model, 'id')->hiddenInput()->label(false); ?>
<?= $form->field($model, 'type_id')->dropDownList($types); ?>

<?php
    Pjax::begin([
            'id' => 'pjax-1',
            'enablePushState'=>false,
            'enableReplaceState' => false,
            'options' => ['data-request-url' => Yii::$app->request->url]
    ]);
    
    $gridColumns = ['name'];

    echo GridView::widget([
        'id' => 'grid-view-1',
        'dataProvider' => $dataProvider,
        'columns' => $gridColumns,
        'filterModel' => $searchModel,
        'summary' => '',
    ]);
    
     Pjax::end();
?>


<?= Html::submitButton('Добавить', ['class' => 'btn btn-primary add-node-btn form-save-btn', 'id' => 'add-element']) ?>
<?php ActiveForm::end(); ?>

Ответы (0 шт):