Yii2 Yii 2选择2带自定义html的kartik

Yii2 Yii 2选择2带自定义html的kartik,yii2,jquery-select2,Yii2,Jquery Select2,如何将其转换为Yii2 select2 kartik小部件?我认为Select2Kartik小部件的“data”属性只允许id->text。有没有一种方法可以使用小部件完成这项工作 var data = [{ id: 0, text: 'enhancement', html: '<div style="color:green">enhancement</div>' }, { id: 1, text: 'bug', html: '&l

如何将其转换为Yii2 select2 kartik小部件?我认为Select2Kartik小部件的“data”属性只允许id->text。有没有一种方法可以使用小部件完成这项工作

var data = [{
   id: 0,
   text: 'enhancement',
    html: '<div style="color:green">enhancement</div>'
}, {
   id: 1,
   text: 'bug',
    html: '<div style="color:red">bug</div><div><small>This is some small text on a new line</small></div>'
}];

function template(data) {
    return data.html;
}

$("select").select2({
   data: data,
   templateResult: template,
   escapeMarkup: function(m) {
      return m;
   }
});
var数据=[{
id:0,
文本:“增强”,
html:“增强”
}, {
id:1,
文本:“bug”,
html:“这是新行上的一些小文本”
}];
功能模板(数据){
返回data.html;
}
$(“选择”)。选择2({
数据:数据,
模板结果:模板,
逃逸标记:功能(m){
返回m;
}
});

解决方案是在“pluginOptions”数组中使用“data”属性:


解决方案是在“pluginOptions”数组中使用“data”属性:


你找到解决方案了吗?还是仍在寻找解决方案?是的,请参见下面我的答案。你找到解决方案了吗?还是仍在寻找解决方案?是的,请参见下面我的答案。
echo $form->field($model, 'id_customer')->label(false)->widget(Select2::classname(), [
    'data' => [],
    'options' => ['placeholder' => Yii::t('app', 'Select a customer')],
    'pluginOptions' => [
        'allowClear' => true,
        'data' => $customerList,
        'escapeMarkup' => new JsExpression('function (markup) { return markup; }'),
        'templateResult' => new JsExpression('formatTemplateResult'),
        'templateSelection' => new JsExpression('formatSelection'),
    ],
]);