2016-11-21 83 views
-2

的选择的选项在我的HTML设置颜色,我有很多<option>元素<select>。我想用jQuery来检查每个选项的值对应一个Javascript变量。如果一个匹配,我想设置该选项的颜色。我会怎么做?一个HTML Select元素

+3

告诉我们你有什么到目前为止已经试过。 –

回答

0

如果我从你的需求的理解,你应该尝试以下,

var yourVar = 1; //consider your expected value; 
$(document).on('change', '#selectId', function(){ 

    var currentValue = $(this).val(); 
    if(yourVar == currentValue) 
    { 
     //apply your colour logic 
    } 
}); 
0

如果它只是一个普通的HTML列表,而不是一个jQuery UI之一,那么这一切:

var found = $('#cars option[value="saab"]');//Search for 'saab' value 
 
found.css("color","red");//Set color as red
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 

 
<select id="cars"> 
 
    <option value="volvo">Volvo</option> 
 
    <option value="saab">Saab</option> 
 
    <option value="mercedes">Mercedes</option> 
 
    <option value="audi">Audi</option> 
 
</select>

+0

如果值是数组,例如我想为沃尔沃和萨博选项设置红色,我应该如何使用每个选项? – Yao

+0

@Yao,做到这一点的一种方式是通过'$( '#汽车选项[值= “萨伯”],[值= “沃尔沃”]');'或检查http://stackoverflow.com/questions/26301547/jquery的选元素按值从 - 阵列的值 –

0

你能赶上你从jQuery的选择的选项,从$(select).find('option:selected'),另一种方式是$(select).val()(它会返回select的值)。

但样式选择元素是不可能的,这结帐link