在其他选择

时间:2018-01-16 14:17:34

标签: javascript jquery

如何在所有三个选项中禁用所有选定的选项?它仅在选择第一个时才起作用。



$(".selectClass").change(function() {
  $("select option").prop("disabled", false);
  $(".selectClass").not($(this)).find("option[value='" + $(this).val() + "']").prop("disabled", true);
});

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<select class="selectClass">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
</select>
<select class="selectClass">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
</select>
<select class="selectClass">
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>
    <option value="4">4</option>
    <option value="5">5</option>
    <option value="6">6</option>
</select>
&#13;
&#13;
&#13;

http://jsfiddle.net/84w50z2v/1/

2 个答案:

答案 0 :(得分:2)

到目前为止我理解正确您只需要将disabled设置为HTML元素。

你的小提琴:

http://jsfiddle.net/84w50z2v/2/

<select class="selectClass">
 <option value="1">1</option>
 <option value="2">2</option>
 <option value="3">3</option>
 <option value="4">4</option>
 <option value="5">5</option>
 <option value="6">6</option>
</select>
<select class="selectClass">
 <option value="1" disabled>1</option>
 <option value="2">2</option>
 <option value="3">3</option>
 <option value="4">4</option>
 <option value="5">5</option>
 <option value="6">6</option>
</select>
<select class="selectClass">
 <option value="1" disabled>1</option>
 ...

问候

答案 1 :(得分:0)

要在所有3个选项列表中真正禁用,您需要使用此 -

var selectedValues = [];
$(".selectClass").change(function () {
    selectedValues.push($(this).val());
    $.each(selectedValues,function(i,el){
        $(".selectClass").not($(this)).find("option[value='" + el + "']").prop("disabled", true);
    });
});

此处jsfiddle