簡體   English   中英

頁面大小下拉列表和CListView在yii中不起作用

[英]Page size dropdownlist and CListView not working in yii

我正在托盤中進行項目的下拉式分頁,但無法正常工作。 無論我在下拉列表中選擇的數字是什么,它仍然會在頁面中顯示10個項目。 我想念什么?

謝謝。

截圖

查看代碼:

 <?php
    //$dataProvider->pagination->pageSize = 25;

    $pageSize=Yii::app()->user->getState('pageSize',Yii::app()->params['defaultPageSize']); 
    echo CHtml::dropDownList('pageSize',$pageSize,array(5=>5,10=>10,15=>15,20=>20,25=>25,30=>30),
    array('onchange'=>"$.fn.yiiGridView.update('packages-grid',{ data:{pageSize: $(this).val() }})",
    'empty'=>'-- Select Page Range --','style'=>'width:198px;'));

    $this->widget('zii.widgets.CListView', array(
        'id'=>'propertylistview',
        'dataProvider'=>$dataProvider,
            'summaryText'=>'',
        'itemView'=>'_propertyview',
            'sortableAttributes' => array(
                .........
             )
     ));
    ?>

控制器代碼:

public function actionAdmin(){         
if (isset($_GET['pageSize'])) {
 Yii::app()->user->setState('pageSize',(int)$_GET['pageSize']);
 unset($_GET['pageSize']);}
    $model=new Packages('search');
    $model->unsetAttributes(); 
    if(isset($_GET['Packages']))
        $model->attributes=$_GET['Packages'];       
        $dataProvider=new CActiveDataProvider('Packages'); 
    $this->render('admin',array('model'=>$model,'dataProvider'=>$dataProvider,
    ));
}

我已經將其添加到模型搜索中

return new CActiveDataProvider(get_class($this),array(
            'pagination'=>array(
                'pageSize'=> Yii::app()->user->getState('pageSize',Yii::app()->params['defaultPageSize']),
            ),
            'criteria'=>$criteria,
    )); 

這是config / main.php

'params'=>array('defaultPageSize'=> '10'),

您正在執行ajax調用,但是在窗口小部件中,您未聲明要更新的任何更新部分。 解決方案是ajaxUpdate

並且您在使用CListView時正在使用'onchange'=>"$.fn.yiiGridView.update ,因此請將js更改為'onchange'=>"$.fn.yiiListView.update並:

<?php
// your code    
$this->widget('zii.widgets.CListView', array(
   'id'=>'propertylistview',
   'ajaxUpdate' => 'propertylistview', //add this line
   'dataProvider'=>$dataProvider,
   'summaryText'=>'',
   'itemView'=>'_propertyview',
   'sortableAttributes' => array(
   //etc.. )
));
?>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM