jQuery按值禁用多个选项

时间:2014-06-15 05:58:01

标签: jquery html5

我想知道如何按值禁用多个选项。我知道我可以这样做:

<script>
$('option[value=1],option[value=2]...').prop('disabled', true);
</script>

但我有大约100多个值,并且没有特定的值模式。

如果有的话,最简单的方法是什么?

3 个答案:

答案 0 :(得分:2)

var values = [5, 4, 3];

$.each(values, function(k, v) {
     $('option[value=' + v + ']').prop('disabled', true);
});

<强> JSFIDDLE DEMO

答案 1 :(得分:0)

循环可能是?

var startingNumber = 1, endingNumber = 100;
for(var i = startingNumber; i < endingNumber +1 ; i++){
   $('option[value="'+ i + '"]').prop('disabled',true); 
}

或者填充一个数组并循环遍历它:

var nums = [1,2,3,5,8];
for(var i = 0; i < nums.length; i++){
    $('option[value="'+ i + '"]').prop('disabled',true);    
}

答案 2 :(得分:0)

@martynas有一个很好的答案,但这个更短:

var disabledValuesArr = [5, 4, 3];
$("option[value='" + disabledValuesArr.join("'],[value='") + "']").prop('disabled', true);

JSFiddle