在构建菜单后选择2回调或事件

时间:2018-03-20 23:43:16

标签: javascript jquery-select2

为此,我动态地重新选择了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范围的功能?

1 个答案:

答案 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>';
     }
     ...
})