yii2 pjax在其他pjax中

时间:2017-07-17 13:59:54

标签: yii2 pjax

我有两个pjax的表格。 (一个内部两个)当第二个PJAX中的点击链接发送查询到服务器但在字段" X-PJAX-Container"写第一个容器ID。

Pjax::begin([
    'id' => 'register-form'
    ]);

...

Pjax::begin([
    'id' => 'que'
    ]);

echo yii\helpers\Html::a('update', ['/portal/que/gr-usl/');

Pjax::end();

...

Pjax::end();
点击更新后的

位置: / portal / que / gr-usl?_pjax =%23register-form

请求标题

X-PJAX:true
X-PJAX-Container:#register-form
X-Requested-With:XMLHttpRequest

如果设置 data-pjax ,链接 #que 请求标头未更改。

1 个答案:

答案 0 :(得分:0)

对于内部pjax中的所有链接禁用数据-pjax将href更改为onclick with function

$.pjax({url: $(el).attr('link'), container: '#pjax-grusl'});

链接有代码

echo yii\helpers\Html::a('update', null,[
        'data-pjax' => 'false',
        'link' => \yii\helpers\Url::to(['/portal/que/gr-usl/',
            'ids'    => $ids,
            'filter' => $filter,
            'gr'     => $gr
        ]),
        'onclick' => 'selGr(this)'
    ]);

但它应该从框中工作:(我不明白为什么点击链接没有从dom树找到第一个pjax容器。