Yii2嵌套pjax

Yii2嵌套pjax,yii2,pjax,Yii2,Pjax,我有一个带有选项卡的页面(实际上是由父pjax处理的链接)。它通过pjax调用加载选项卡内容 在其中一个选项卡中,我有一个gridview,它位于pjax容器中。所以它是嵌套的。 问题在于,当加载并插入页面时,嵌套的javascript不包含自己的javascript,即: jQuery(document).pjax("#history-gridview a", "#history-pjax", {"push":true,"replace":false,"timeout":5000,"scrol

我有一个带有选项卡的页面(实际上是由父pjax处理的链接)。它通过pjax调用加载选项卡内容

在其中一个选项卡中,我有一个gridview,它位于pjax容器中。所以它是嵌套的。 问题在于,当加载并插入页面时,嵌套的javascript不包含自己的javascript,即:

jQuery(document).pjax("#history-gridview a", "#history-pjax", {"push":true,"replace":false,"timeout":5000,"scrollTo":false});

请求选项卡页面(或内容)时,需要调用
renderAjax()
。我是这样做的:

if (Yii::$app->request->isAjax) return $this->renderAjax('myview');
else return $this->render('myview');
但是,它可能无法解决您的问题。我发现,如果我导航选项卡并在选项卡中动态加载网格(使用其自己的pjax容器),那么与网格排序和筛选的任何交互都会尝试从外部(pjax选项卡)容器重新加载,即使skipOuterContainers设置为true

另一方面,开发人员正在考虑完全放弃pjax支持以及资产包的工作方式


问题依然存在:

如何创建像SPA(单页应用程序)一样的超快性能 没有Angular2或类似的?选项卡容器中的网格容器 是一个完美的例子,如果可以实现的话(满足 后退/前进按钮、初始化脚本)将非常棒