如果选择了某个条件,我希望 jQuery 将我的一些多选列表选项的颜色更改为红色。这是我的代码:
$.each(subjects, function(key, subject)
{
if (select.find('option[value=\"' + encodeURIComponent(subject) + '\"]').length === 0 && subject!="")
{
$('<option>', {
value: subject,
text: subject
}).appendTo(select);
if (colored==true)
{
//Change color of options' text
$("option[value='"+subject+"']").css('color', 'red');
}
}
});
这段代码的问题在于,jQuery 不仅将当前正在运行的多选选项的选项设置为红色,而且它的名称在变量select中定义。但是 jQuery 也会在页面上的所有其他多选中为这些选项着色,如果它们包含它的话。
如何编辑此代码以使 jQuery 仅对当前多选中包含的选项进行着色,其名称再次在select变量中定义?
例如,更换
$("option[value='"+subject+"']").css('color', 'red');
和
(select.find("option[value='"+subject+"']").css('color', 'red');
不工作。什么是正确的代码?先感谢您。