我有一个带有票证信息的yii2页面。这里可以看到例子 https://github.com/kartik-v/yii2-dynagrid/issues/97
我希望能够定期刷新页面,或者在记录更改或添加新内容时刷新页面。
我尝试过类似的东西,但由于某些原因它无效
$js = '$("#pageReload").on("pjax:end", function() {
$.pjax.reload({container:".inbox"}); //Reload GridView
});';
$this->registerJs($js, $this::POS_READY);
$js2 = 'function refresh() {
$.pjax.reload({container:"#dynagrid-1",timeout: 10000});
};
refresh();';
$this->registerJs($js2, $this::POS_READY);
$.pjax.reload({container: '#idGridView'});
$.pjax.reload({container: '#pjax-container', timeout: 2000});
$script = <<< JS
$.pjax.reload({container: '#av_list-1-pjax', timeout: 2000});
//JS;
$this->registerJs($script);
答案 0 :(得分:1)
检查元素然后获取gridview的容器。它应该看起来像这样<div id="w0-pjax">
- 你的可能会有所不同。在这种情况下,w0-pjax
是容器的ID。
然后我们可以写下以下内容......
$.pjax.reload({container:'#w0-pjax'});
答案 1 :(得分:1)
这是我每分钟刷新网格的解决方案
setInterval(
function refresh()
{
$.pjax.reload({
container:'#task-grid',
timeout:60000,
})
},10000);