我想用下拉菜單來改變listview的頁面大小。請幫我找到解決辦法。 我已閱讀了很多文章,但無法做到這一點。你可以找到我在哪裏犯錯update yii listview onchange of dropdown
我使用下面的代碼。爲的index.php(視圖)
代碼下拉列表
代碼
<?php echo CHtml::beginForm(); ?>
<?php echo CHtml::dropDownList('CategoryMst_pagesize','20',
array('10'=>'10','20'=>'20','50'=>'50','100'=>'100'
),
array('class'=>'form-control',
/*'ajax'=>array(
'type'=>'GET',
'data'=>array('pagesize'=>'js:this.value'),
'ajaxUpdate':()
),*/
));
?>
<?php echo CHtml::endForm(); ?>
爲列表視圖代碼
<?php $this->widget('zii.widgets.CListView',array(
'id'=>'category_list',
'dataProvider'=>$dataProvider,
'itemView'=>'_view',
'summaryText'=>'{start} - {end} of {count} results',
));
?>
<?php
Yii::app()->clientScript->registerScript('category_update',
"$('#CategoryMst_pagesize').change(function(){
$.fn.yiiListView.update('category_list', {
data: $(this).serialize(),
}
);
});
return false;",
CClientScript::POS_READY);
?>
在cotroller代碼
public function actionIndex($pagesize=20)
{
$dataProvider=new CActiveDataProvider('CategoryMst',array(
'criteria'=>array(
),
'pagination'=>array(
'pageSize'=>$pagesize,
),
));
$this->render('index',array('dataProvider'=>$dataProvider));
}
哎thakns您的回覆....但其實我很高興我的代碼是有效的....包括jquery.min文件中的問題...它包含兩次...因此我不能使用JavaScript調用操作。再次感謝 – user3177586
確保你使用registercorescript包含jquery,這應該阻止它被包含2次。 –
是的,我已經包含文件直接使用