【问题标题】:Can I refresh a Yii CGridView from js?我可以从 js 刷新 Yii CGridView 吗?
【发布时间】:2011-03-05 05:11:20
【问题描述】:

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

我尝试通过在 XHR“创建”操作中渲染新的 gridview 然后通过 $("#list").html(response) 将其插入到页面中来实现这一点,但是渲染 CGridView 会导致 jQuery <script> 包含要注册的标签为了包含,所以当我将这些标签引入页面时,它们会重新加载 jQuery,这会清除我的 live 事件处理程序,所以一堆东西会中断。

这让我想到了,“GridView 知道如何刷新自己。哎呀,它一直在排序或页面上。”

所以我可以从 js 中单击 GridView 中的排序按钮,但这比理想少。我更愿意说

$("#list").gridview('reload') 或 $.fn.gridview.reload("#list") 或类似的意思。

或者做你刚才想到的简单得多的酷事。

【问题讨论】:

    标签: php jquery yii


    【解决方案1】:

    执行$.fn.yiiGridView.update("<id of CGridView>");

    【讨论】:

    • 这个命令的缺点是它会重置过滤器、排序和分页。因此,如果您按 ID 订购商品,请转到第二页,然后调用此命令,当前屏幕会丢失,您必须再次找到您的商品。
    • $.fn.yiiListView.update("", { data: $("yourcustomselectors").serialize() });
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-09-15
    • 1970-01-01
    • 1970-01-01
    • 2012-11-01
    • 2012-02-25
    • 2018-10-01
    • 1970-01-01
    相关资源
    最近更新 更多