5

我正在使用 jQuery 在 Yii 中扩展 CGridView 以在切换页面时记住选中的行。页面是使用 AJAX 加载的,所以我认为当请求完成并呈现新页面时,我希望我的代码能够介入,这很神奇。但是,我似乎找不到任何文档表明任何事件被触发,或者当新页面完成呈现时。

但是,我可以使用 DOM 侦听器,但我认为对整个页面使用一个事件会更好。

4

1 回答 1

13

您可以使用afterAjaxUpdate(因为您的页面是用 ajax 加载的):

$this->widget('zii.widgets.grid.CGridView', array(
    // ... options ...
    'ajaxUpdate'=>true,
    'afterAjaxUpdate'=>'aFunctionThatWillBeCalled', //
    // ... more options ...
));

您可以像这样添加 js 函数:

Yii::app()->clientScript->registerScript('some-script-id','function aFunctionThatWillBeCalled(id, data){
    console.log("id is "+id);
    // your jquery code to remember checked rows
}');
于 2013-02-12T17:52:14.193 回答