jQuery select2 将 class 添加到所选项目
jQuery select2 add class to selected items
我希望能够将 class 添加到选定的标签,以便我可以为它们设置不同的颜色。有没有办法做到这一点?例如,请参见以下内容:
因此,如果我希望任何类别标签为绿色,任何位置标签为蓝色,任何关键字标签为红色,我该怎么做。我试过像这样使用 templateSelection
选项:
$('select').select2({
templateSelection: function(item)
{
return '<span class="green">' + item.text + '</span>';
}
});
但是 HTML 被转义了,所以它显示了实际的字符。另外,这不会将 class 添加到标签本身。
您可以使用 templateSelection
然后搜索它是位置还是关键字,然后 添加 escapeMarkup
属性:
function template(data, container) {
if(/Location\:/.test(data.text)) {
return '<span class="location">'+data.text+'</span>';
} else {
return data.text;
}
}
$('select').select2({
templateSelection: template,
escapeMarkup: function(m) { return m; }
});
拜托,看看它是否有效:
我希望能够将 class 添加到选定的标签,以便我可以为它们设置不同的颜色。有没有办法做到这一点?例如,请参见以下内容:
因此,如果我希望任何类别标签为绿色,任何位置标签为蓝色,任何关键字标签为红色,我该怎么做。我试过像这样使用 templateSelection
选项:
$('select').select2({
templateSelection: function(item)
{
return '<span class="green">' + item.text + '</span>';
}
});
但是 HTML 被转义了,所以它显示了实际的字符。另外,这不会将 class 添加到标签本身。
您可以使用 templateSelection
然后搜索它是位置还是关键字,然后 添加 escapeMarkup
属性:
function template(data, container) {
if(/Location\:/.test(data.text)) {
return '<span class="location">'+data.text+'</span>';
} else {
return data.text;
}
}
$('select').select2({
templateSelection: template,
escapeMarkup: function(m) { return m; }
});
拜托,看看它是否有效: