根据 Select2 4.0 中的值应用 css class
Applying css class according to value in Select2 4.0
我有一个select2 select,我想根据值改变背景颜色。
但是,允许我这样做的选项 (formatSelectionCssClass
) 似乎已从 select2
的 V4.0 中删除
我尝试将 templateResult
与以下内容一起使用:
templateResult: function (item) {
if (item.loading)
return item.text;
var element = $("#" + item._resultId);
switch (item.text) {
case "0":
element.addClass("element-0");
break;
case "1":
element.addClass("element-1");
break;
case "2":
element.addClass("element-2");
break;
case "3":
element.addClass("element-3");
break;
}
return item.text;
},
编辑:JSFiddle:https://jsfiddle.net/ubswjv95/
您无法通过选择器找到元素,因为当您尝试获取 var element = $("#" + item._resultId);
项时,下拉列表中未添加。我已经更新了你的 fiddle,我没有用你的 类 返回项目 returns div
的文本,而且看起来很好 https://jsfiddle.net/ubswjv95/2/。此解决方案几乎不需要调整,但这是您应该采用的方式。
我有一个select2 select,我想根据值改变背景颜色。
但是,允许我这样做的选项 (formatSelectionCssClass
) 似乎已从 select2
我尝试将 templateResult
与以下内容一起使用:
templateResult: function (item) {
if (item.loading)
return item.text;
var element = $("#" + item._resultId);
switch (item.text) {
case "0":
element.addClass("element-0");
break;
case "1":
element.addClass("element-1");
break;
case "2":
element.addClass("element-2");
break;
case "3":
element.addClass("element-3");
break;
}
return item.text;
},
编辑:JSFiddle:https://jsfiddle.net/ubswjv95/
您无法通过选择器找到元素,因为当您尝试获取 var element = $("#" + item._resultId);
项时,下拉列表中未添加。我已经更新了你的 fiddle,我没有用你的 类 返回项目 returns div
的文本,而且看起来很好 https://jsfiddle.net/ubswjv95/2/。此解决方案几乎不需要调整,但这是您应该采用的方式。