当我在我的小部件中输入几个字符时,我从AJAX中得到这样的结果:
[{"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};}'
]
]
]
);
我错过了什么?
答案 0 :(得分:1)
您在小部件中缺少formatResult
和formatSelection
定义。
请参阅this code for an example。
结果由带有自定义标记的formatResult
函数处理,结构与您的类似。