为此,我动态地重新选择了select中的每个选项。我已经尝试了打开和打开,当它们被调用时,正在创建的菜单存在。
$(document).on("select2:opening", function () {
console.log('Here', $('#select2-SELECTNAME-results li').length);
$('#select2-SELECTNAME-results li').each(function(k,ele){
console.log(k, $(ele).text());
$(ele).css('background-color', COLOROBJECT[k]).addClass('text-shadow');
});
});
如果我在创建菜单后运行代码,它的效果很好。我需要一个回调,告诉我菜单何时创建。这是否存在而且我遗漏了它,或者这是一个缺少select2范围的功能?
答案 0 :(得分:0)
Select2具有templateResult
配置,允许您更改下拉列表的外观。见这里:https://select2.org/dropdown
一个例子:
$("#select2-SELECTNAME-results").select2({
...
templateResult: function(data) {
return '<li class="text-shadow" style="background-color:' + COLOROBJECT[k] + '" >' + data.text + '</li>';
}
...
})