2

当我在我的小部件中输入几个字符时,我会从 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};}'
                ]
            ]
        ]
);

我错过了什么?

4

1 回答 1

1

您在小部件中缺少一个formatResult和一个formatSelection定义。有关示例,请参阅此代码。

结果由formatResult具有自定义标记的函数处理,结构与您的相似。

于 2013-02-26T17:24:52.533 回答