在select中添加class to option

时间:2011-04-22 09:30:47

标签: javascript jquery

根据选项的值,可以在选项中添加一个类吗?

所以,如果我有这个:

   <select class="rubrique" name="ctl00">
    <option value="" selected="selected"></option>
    <option value="1">1</option>
    <option value="1">1</option>
    </select>

我会明白的:

<select class="rubrique" name="ctl00">
        <option class="" value="" selected="selected"></option>
        <option class="1" value="1">1</option>
        <option class="2" value="1">1</option>
        </select>

4 个答案:

答案 0 :(得分:7)

是的,非常轻松,使用addClass的回调签名:

$('.rubrique option').addClass(function() {
    return this.value;
});

答案 1 :(得分:2)

$('.rubrique > option').each(function(){
    $(this).addClass($(this).val());
});

编辑:我不确定.val()在这里是否100%正确,你也可以使用它:

$('.rubrique > option').each(function(){
    $(this).addClass($(this).attr('value'));
});

答案 2 :(得分:0)

如果是为特定选项元素设置样式的目的,您也可以考虑这种方法:

.rubrique option[value="2"]{
     background: yellow;
}

答案 3 :(得分:0)

将类添加到选项的最简单方法。

$(“#IdOfSelect选项[value ='” + valueOfSelect +“']”)。addClass('hidden');