Автозаполнение виджета в yii - PullRequest
5 голосов
/ 23 декабря 2011

Я пытаюсь использовать виджет автозаполнения yii. Мне удалось показать результаты из моей таблицы пользователей на входе, заполненном следующими блоками кода:

public function actionSearch() 
{
    $res =array();
if (isset($_GET['term'])) 
    {           
        $qtxt ="SELECT user FROM tbl_user WHERE user LIKE :user";
        $command =Yii::app()->db->createCommand($qtxt);
        $command->bindValue(":user", '%'.$_GET['term'].'%', PDO::PARAM_STR);
        $res =$command->queryColumn();
    }
echo CJSON::encode($res);      
    Yii::app()->end();
}

$this->widget('zii.widgets.jui.CJuiAutoComplete', array(
'name'=>'test1',
'source'=>$this->createUrl('user/search'),
// additional javascript options for the autocomplete plugin
'options'=>array(
            'showAnim'=>'fold',
            'select'=>'js:function( event, ui ) {
                //
            }'
),
));

Как только пользователь выбран, я хочу перенаправить на эту страницу пользователя. Мне нужно поймать имя пользователя в событии выбора. Или альтернативный способ - перехватить как имя пользователя, так и идентификатор пользователя, чтобы можно было легко перенаправить этот идентификатор.

1 Ответ

3 голосов
/ 23 декабря 2011

Я надеюсь, что это решение

'select' => 'js:function( event, ui ){
     // ui.item.id
     // ui.item.name
     top.location = "/user/view/?id=" + ui.item.id;
}'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...