我想为Select2插件添加自定义功能(但我没有必要的知识),比如
$('.select2').select2({
optionDrawCallback : function(li_element){
return li_element.className += 'bg-'+li_element.text;
}
});
然后我转到源代码(select2.full.js)并找到每个选项元素的创建位置,其中:
Results.prototype.option = function (data) {...}
但现在我无法找到如何触发我的功能。
我能够通过dataAdapter
触发它,这应该是选择本身,但这不是我需要的。
任何建议都将非常感激。
答案 0 :(得分:0)
我使用on
jquery函数为类select2
的点击事件添加了一个回调,它显示了默认/选定选项。只要select2的标记结构保持不变,这就可以正常工作。
请参阅此fiddle以获取演示。
$('.select2').on('click', function(li_element){
$(this).siblings(".select2-container--open").find(".select2-results__option").each(function(index,el) {
console.log($(el).text());
$(el).addClass('bg-' + $(el).text());
});
});