如何使用jquery检查选择框中的任何选项是否等于另一个选择框中的任何选项

时间:2018-05-13 20:17:21

标签: javascript jquery

我有2个选择框,它们都有通过数据库查找自动填充的选项。我尝试检查选择框中是否有任何选项。 2等于选择框1中的任何选项。如果为true,则从选择框no 1中删除此选项,如果fals将其保留在两者中。

我在搜索时找到以下代码,但它不能与我合作:

var exists = false;
  $('#select-box2 option').each(function(){
   if (this.value == $('#select-box1 option').val()) {
    exists = true;
    return false;
   }
});

1 个答案:

答案 0 :(得分:1)

也许是这样的:



  $('#select-box2 option').each(function(){  //loop option #select-box2
      var sb2_option=$(this);
       $('#select-box1 option').each(function(){  //loop option #select-box1
       	   var sb1_option=$(this);
       	   if(sb2_option.val()==sb1_option.val()){
       	   	   console.log('exist!!! #select-box1=>'+sb1_option.val()+' #select-box2=>'+sb2_option.val());
       	   	   sb2_option.remove();  //or  sb1_option.remove();  - for delete option
       	   }
       });
  });

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>


<select id="select-box1">
  <option value="1">test 1</option>
  <option value="2">test 2</option>
  <option value="3">test 2</option>
  <option value="4">test 4</option>
  <option value="5">test 5</option>
</select>


<select id="select-box2">
  <option value="5">test 5</option>
  <option value="6">test 6</option>
  <option value="7">test 7</option>
  <option value="7">test 8</option>
  <option value="9">test 9</option>
</select>
&#13;
&#13;
&#13;