Php 我可以从js刷新Yii CGridView吗?

Php 我可以从js刷新Yii CGridView吗?,php,jquery,yii,Php,Jquery,Yii,通过XHR提交“创建”模式对话框时 然后应该刷新Yii CGridView中的行 我试图通过在XHR“create”操作中呈现新的gridview,然后通过$(“#list”).html(response)将其插入页面来实现这一点,但是呈现CGridView会导致注册jQuery包含标记,因此当我将这些标记引入页面时,它们会重新加载jQuery,这会抹掉我的事件处理程序,所以一堆东西会断开 这让我想到,“GridView知道如何刷新自己。见鬼,它总是在排序或页面上刷新。” 因此,我可以从js中单

通过XHR提交“创建”模式对话框时 然后应该刷新Yii CGridView中的行

我试图通过在XHR“create”操作中呈现新的gridview,然后通过
$(“#list”).html(response)
将其插入页面来实现这一点,但是呈现
CGridView
会导致注册jQuery
包含标记,因此当我将这些标记引入页面时,它们会重新加载jQuery,这会抹掉我的事件处理程序,所以一堆东西会断开

这让我想到,“GridView知道如何刷新自己。见鬼,它总是在排序或页面上刷新。”

因此,我可以从js中单击GridView中的排序按钮,但这并不理想。我更愿意说

$(“#list”).gridview('reload')或$.fn.gridview.reload(“#list”)或类似的含义


或者用你刚才想到的更简单的方法做一些很酷的事情。

执行
$.fn.yiiGridView.update(“”)

此命令的缺点是它会重置过滤器、排序和分页。因此,如果您按ID订购商品,请转到第二页,然后调用此命令,当前屏幕将丢失,您必须再次找到您的商品。$.fn.yilistView.update(“,{data:$”(“yourcustomselectors”).serialize()});