解决yii的CGridView在高级搜索选项过多时点分页后php崩溃的情况
倒导php崩溃是因为选项过多,其实为空的选项可以不用添加到分页的url上。
可以将以下代码放到views/layouts/main.php文件的底部,修正CGridView分页链接的地址。
[html]
<?php
Yii::app()->clientScript->registerScript('pagerHref', "
$(function(){
$('.pager a').each(function(){
var href = $(this).attr('href');
var page = href.match(/\/([\w]+)_page\/([0-9]+)/);
if (page != null) {
page = page[1]+'_page='+page[2];
} else {
page = '';
}
var sort = href.match(/\/([\w]+)_sort\/([\w]+)/);
if (sort != null) {
sort = sort[1]+'_sort='+sort[2];
} else {
sort = '';
}
var fields = $('.search-form form').serializeArray();
var data = '';
$.each(fields, function(i, field){
if (field.value != '') {
if (data == '') {
data += field.name + '=' + field.value;
} else {
data += '&' + field.name + '=' + field.value;
}
}
});
if (data != '' && page != '') {
page = '&' + page;
}
if ((data != '' || page != '') && sort != '') {
sort = '&' + sort;
}
var url = '".$this->createUrl($this->id.'/'.$this->action->id)."?' + encodeURI(data) + page + sort;
$(this).attr('href', url);
});
});
");
?>
补充:Web开发 , php ,