我正在尝试使用CGridView的ajaxUrl参数,它没有任何效果.
$this->widget('zii.widgets.grid.CGridView',array( 'id'=>'ge-cg-'.$myLib['id'],'filter'=>$geCGModel,'dataProvider'=>$dataProvider,'columns'=>$columns,'ajaxUrl'=>Yii::app()->createUrl( 'Something/search' ),));
这似乎没有覆盖CGridView小部件的ajax url.网格的ajax请求仍然会转到呈现它的控制器(这与网格自己的控制器不同).@H_301_4@
谢谢!@H_301_4@
ajaxUrl属性仅适用于“每列过滤器”和“高级搜索”的搜索.排序链接和分页链接是从您指定的$dataProvider生成的.您可以检查CGridView和CDataColumn的来源,分别查看如何从dataProvider中提取
pagination和
sorting.
因此,如果您希望这些链接也使用您要指定的相同ajaxUrl,则必须为CPagination对象和$dataProvider的CSort对象设置route属性,如下所示:@H_301_4@
$dataProvider=new CActiveDataProvider('Modelname',array( 'criteria'=>$criteria,'pagination'=>array( 'route'=>'something/search' ),'sort'=>array( 'route'=>'something/search' ) ));
这与您当前的CGridView设置相结合应该按预期工作.@H_301_4@