Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.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
Jquery ui 如何在CGridView过滤器中包含CJuiAutoComplete?_Jquery Ui_Autocomplete_Filtering_Yii_Jquery Autocomplete - Fatal编程技术网

Jquery ui 如何在CGridView过滤器中包含CJuiAutoComplete?

Jquery ui 如何在CGridView过滤器中包含CJuiAutoComplete?,jquery-ui,autocomplete,filtering,yii,jquery-autocomplete,Jquery Ui,Autocomplete,Filtering,Yii,Jquery Autocomplete,我有一个列出表格内容的网格视图,表格有一列author\u id 现在我使用关系名列语法显示用户名author.username 在支持CJuiAutoComplete的情况下,是否允许用户在列过滤器中键入用户名,例如提示 我的代码示例: <?php $this->widget('zii.widgets.grid.CGridView', array( 'dataProvider'=>$model->with('author')->search(),

我有一个列出表格内容的网格视图,表格有一列
author\u id

现在我使用关系名列语法显示用户名
author.username

在支持CJuiAutoComplete的情况下,是否允许用户在列过滤器中键入用户名,例如提示

我的代码示例:

<?php $this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$model->with('author')->search(),
    'filter'=>$model,
    'columns'=>array(
        // ...
        array(
            'name'=>'author.username',
            'filter'=> // ?
        ),
        // ...
    ),
));

小部件有第三个参数,可以设置为true,这意味着将返回字符串,并且不会呈现小部件cguiautocomplete

widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$model->with('author')->search(),
    'filter'=>$model,
    'columns'=>array(
        // ...
        array(
            'name'=>'author.username',
            'filter'=> $this->widget('zii.widgets.jui.CJuiAutoComplete', $array_params, true),

        ),
        // ...
    ),
));
和$array_参数可以替换为类似的参数,例如:


          array(
            'name'=>'author_username',
            //'model'=>$model,
            'attribute'=>'city_eve',
            'sourceUrl'=>"/controller/action/",
            'options'=>array(
                'minLength'=>'2',
            ),
            'htmlOptions'=>array(
                'size'=>'36'
            ),
        )
此外,您还必须在模型搜索方法中输入一些检查:


if($request->getQuery("author_username")){
            $criteria->addCondition(author.username=:author_username");
            $criteria->params[':author_username'] = $request->getQuery("author_username");
        }


小部件有第三个参数,可以设置为true,这意味着将返回字符串,并且不会呈现小部件CJuiAutoComplete

widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=>$model->with('author')->search(),
    'filter'=>$model,
    'columns'=>array(
        // ...
        array(
            'name'=>'author.username',
            'filter'=> $this->widget('zii.widgets.jui.CJuiAutoComplete', $array_params, true),

        ),
        // ...
    ),
));
和$array_参数可以替换为类似的参数,例如:


          array(
            'name'=>'author_username',
            //'model'=>$model,
            'attribute'=>'city_eve',
            'sourceUrl'=>"/controller/action/",
            'options'=>array(
                'minLength'=>'2',
            ),
            'htmlOptions'=>array(
                'size'=>'36'
            ),
        )
此外,您还必须在模型搜索方法中输入一些检查:


if($request->getQuery("author_username")){
            $criteria->addCondition(author.username=:author_username");
            $criteria->params[':author_username'] = $request->getQuery("author_username");
        }