2011-12-23 6 views
5

ウィジェットでyiiオートコンプリートビルドを使用しようとしています。 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) { 
       // 
      }' 
), 
)); 

はできるだけ早くユーザーが選択されているとして、私は、そのユーザーのページにリダイレクトしたい:私は私のユーザーテーブルのイントロからの結果次のコードブロックに提出入力を表示するために管理しています。私はselectイベントでユーザー名をキャッチする必要があります。あるいは、別の方法として、ユーザー名とユーザーIDの両方をキャッチして、そのIDで簡単にリダイレクトできるようにすることもできます。

答えて

3

私は、このソリューション

'select' => 'js:function(event, ui){ 
    // ui.item.id 
    // ui.item.name 
    top.location = "/user/view/?id=" + ui.item.id; 
}' 
であると思います