我有这个问题。我在用yii2。我使用datatable来显示我的内容。百事大吉。但是当我用Pjax重新加载表时。有些人会失踪。这是截图:

这是在提交pjax之前。

这是屈服后的。
有人知道如何在通过pjax重新加载时重新加载div吗?谢谢。
以下是提交时我在_form中的代码:
$script = <<< JS
$('form#{$model->formName()}').on('beforeSubmit', function(e)
{
var \$form = $(this);
$.post(
\$form.attr('action'),
\$form.serialize(),
)
.done(function(result){
if (result == 1)
{
$(\$form).trigger('reset');
$.pjax.reload({
container: '#w0',
timeout: false
});
} else {
$('#message').html(result);
}
}).fail(function()
{
console.log('server error');
});
return false;
});
JS;
$this->registerJs($script);发布于 2019-02-14 08:39:22
在使用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);希望能帮上忙。
https://stackoverflow.com/questions/54682740
复制相似问题