仅将样式应用于特定选择选项

时间:2015-12-09 19:25:02

标签: javascript jquery css

我想为我option下拉菜单的特定select添加背景颜色。目前我正在使用以下内容,但它将颜色应用于下拉列表下的所有选项。我有一个''选项,那是我需要变红的选项。

if (document.getElementById('agileteams' + x).value.length < 1 && array3[i]['Agile_Team'] == null) {
    document.getElementById('agileteams' + x).style.backgroundColor = "#FF0000";
}

我尝试在该选项中添加一个类并更改CSS,但由于某些原因似乎不起作用。

1 个答案:

答案 0 :(得分:0)

这里是jquery版本:

解决方案1 ​​:如果您希望在初始加载时设置option。这需要使用jquery select函数迭代each内的$('select option').each(function(){ if($(this).attr("value") == "" || $(this).attr("value") == undefined) $(this).css("background-color","#FF0000"); // 'this' refers to the option element inside select });

background-color

解决方案2 :如果您希望在选择option时设置select。这需要在$('select').on("change", function(){ if($(this).find("option:selected").attr("value") == "" || $(this).find("option:selected").attr("value") == undefined) $(this).css("background-color","#FF0000"); // 'this' refers to the element select. else $(this).css("background-color","#FFFFFF"); }); 上委派更改事件。

{{1}}

工作示例:http://jsfiddle.net/dh0kxtLv/15/