2012-12-04 65 views
2

當我進入我的窗口小部件的幾個字符,我得到這樣的結果從AJAX:如何使用AJAX填充select2小部件?

[{"id":550,"campName":"IB Resi Showtime Rebate Website"},{"id":60,"campName":"OB ACGBK EB"}] 

不過,我缺少了如何來填充這些結果的插件的一部分。

這裏是我使用的插件的代碼:

$this->widget 
(
     'ext.ESelect2-master.ESelect2', 
     [ 
      'selector'=>'#campaigns', 
      'options'=> 
      [ 
       'tags'=>$tags, 
       'allowClear'=>true, 
       'minimumInputLength' => 2, 
       'width'=>'300px', 
       'multiple'=>true, 
       'placeholder'=>'Campaigns', 
       'ajax'=> 
       [ 
        'url'=>Yii::app()->createUrl('CoxReports/autoCompleteCampaigns'), 
        'dataType'=>'json', 
        'data'=>'js:function(term,page){return{q: term, page_limit: 10, page: page};}', 
        'results'=>'js:function(data,page){ return {results:data};}' 
       ] 
      ] 
     ] 
); 

我缺少什麼?

回答

1

您錯過了小部件中的formatResultformatSelection定義。 見this code for an example

結果由具有自定義標記的formatResult函數處理,結構與您的類似。