我在Yii中使用jQuery扩展CGridView来记住切换页面时检查的行。这些页面是使用AJAX加载的,所以我认为当请求完成并呈现新页面时,我希望我的代码能够实现它的魔力。但是,我似乎无法找到任何指示任何事件被触发的文档,或者在新页面完成渲染时也是如此。
但我可以使用DOM侦听器,但我认为最好在整个页面中使用一个事件。
答案 0 :(得分: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
}');