如何使用小部件('yiiwheels.widgets.typeahead.WhTypeAhead')传递查询和接收结果表单控制器以进行查看。

时间:2013-12-17 06:36:45

标签: yii

我尝试从数据库创建Yii自动完成小部件 controller.php 我需要view.php代码。

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

            **view.php** 
            <?php
            //i need this code
            ?>

谢谢,

2 个答案:

答案 0 :(得分:0)

使用此链接http://www.yiiframework.com/wiki/162/a-simple-action-for-cjuiautocomplete/

  $this->widget('zii.widgets.jui.CJuiAutoComplete', array(
      'attribute'=>'my_name',
        'model'=>$model,
        'sourceUrl'=>array('my/aclist'),
        'name'=>'my_input_name',
        'options'=>array(
          'minLength'=>'3',
        ),
        'htmlOptions'=>array(
          'size'=>45,
          'maxlength'=>45,
        ),
  )); 

答案 1 :(得分:0)

就这样做..

    <?php
    $this->widget('yiiwheels.widgets.typeahead.WhTypeAhead', array(
        'id' => 'anID',
        'name' => 'aName',
        'htmlOptions' => array('placeholder' => 'A Place Holder'),
        'pluginOptions' => array(
            array(
                'name' => 'a name',
                'remote'=> 'http://yourdomain.com/Controller/action?param1=value1&param2=%QUERY',
            ))
    ));
    ?>

注意: %QUERY会传递您的输入

您可以使用“remote”从数据库中获取typeahead suggessions。

http://twitter.github.io/typeahead.js/examples/