Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/266.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php yii cgridview输入文本和选择过滤器被禁用_Php_Filtering_Yii_Cgridview - Fatal编程技术网

Php yii cgridview输入文本和选择过滤器被禁用

Php yii cgridview输入文本和选择过滤器被禁用,php,filtering,yii,cgridview,Php,Filtering,Yii,Cgridview,[编辑] 这里有一些我用来排序的js代码,它禁用了对div容器的选择 我正在使用Yii cgridview显示我的数据。但我无法在输入文本字段中键入内容,也无法从选择/下拉列表中选择,这些是cgridview上的过滤器选项。顺便说一句,数据来自视图,而不是来自常规表的 下面是我的控制器上的代码 $request = new Request; $request->unsetAttributes(); if(isset($_GET['Request']) $request->attr

[编辑] 这里有一些我用来排序的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)),
            ),
    ));

有什么我遗漏的吗?

数组“请求id、设施id、客户id、状态、描述、提交人、提交人、确认、请求类型”、“安全”、“打开”=>“搜索”;//添加“on”=>“搜索”属性以filter@DanielVaquero已尝试在CGridView上添加'on'=>'search',但仍无法运行注释'filter'=>$request。使用setRequests过滤器。@DanielVaquero谢谢,同样的问题。我可以看到过滤器,问题是我无法选择或键入过滤器字段。我从来没有使用过过滤,我在这里手动创建下拉列表和文本字段。只是为了看看它是否有效,试着不要在每一列中为filter设置一个值;除了选择框之外,您将在其中提供一系列html选项。