【发布时间】:2017-03-22 12:30:24
【问题描述】:
我正在使用 select2 来构建我的组合。
一些元素被禁用,但我想用 aria-required="false" 粗体显示它们
var data= [{
id="1",
value = "first",
disabled:true
},{
id="2",
value = "second",
disabled:false
},
];
function formatResult(node) {
if(node.disabled){
var $result = $('<span><strong>' + node.text + '</strong></span>');
} else {
var $result = $('<span>' + node.text + '</span>');
}
return $result;
}
$("#myCombo").select2({
placeholder: 'Seleccione una opción',
width: "350px",
data: data,
formatSelection: function(item) {
return item.text
},
formatResult: function(item) {
return item.text
},
templateResult: formatResult
});
};
这行得通,但是 li :
<li class="select2-results__option" role="treeitem" aria-disabled="true">
<span style="padding-left:20px;"><strong>first</strong></span>
</li>
当它打开时,使用调试器,如果我执行:
$('.select2-results__option').attr('aria-disabled',false);
它可以按我的意愿工作,但我无法以编程方式执行此操作,似乎不存在 beforeShow 函数,我该怎么做?
【问题讨论】:
标签: jquery select2 jquery-select2-4