1

[编辑] 只有一些用于排序的 js 代码禁用了对 div 容器的选择。

我正在使用 Yii cgridview 来显示我的数据。但我无法在输入文本字段中输入,也无法从选择/下拉列表中进行选择,这些是 cgridview 上的过滤器选项。顺便说一句,数据来自视图,而不是来自常规表。

以下是我的控制器上的代码,

$request = new Request;
$request->unsetAttributes();

if(isset($_GET['Request'])
 $request->attributes=$_GET['Request'];

$this->render('index', array(
            'request' => $request,
        ));

以下是模型上的安全字段,

array('request_id, facility_id, client_id, status, description, submitted_by, submitted, acknowledge, req_type', 'safe')

以下是模型搜索方法的代码

function setRequests(){

$criteria = new CDbCriteria;
$criteria->compare('req_type',$this->req_type, true);
$criteria->compare('description', $this->description, true);
$criteria->compare('status', $this->status, true);

return new CActiveDataProvider($this, array(
         'criteria' => $criteria,
          'pagination'=>array('pageSize'=>5),
        ));
}

以下是视图文件上的代码。

$this->widget('zii.widgets.grid.CGridView', array(
            'id'=>'request-clist',
            'dataProvider'=>$request->setRequests(),
            'filter'=>$request,
            'columns'=>
            array(
                    array('name'=>'req_type', 
                        'header'=>'Item',
                        'value'=>'CHtml::link($data->req_type, array($data->url));',
                        'type'=>'raw',
                        'filter' => CHtml::dropDownList('Request[req_type]',
                        $request->req_type, 
                        array(
                            'Notice' => 'Notice',
                            'FAR' => 'FAR', 
                            'PC' => 'PC',
                            'EM'=>'EM',
                            'RH'=>'RH'),
                        array('empty' => '(Select)'))
                        ),
                    array('name'=>'description', 
                        'header'=>'Description',
                        'filter'=>CHtml::textField('Request[description]',$request->description)),
                    array('name'=>'status',
                         'header'=>'Status',
                         'filter'=>CHtml::textField('Request[status]',$request->status)),
            ),
    ));

有什么我想念的吗?

4

0 回答 0