JQuery - 克隆多个选定的选项 - 如何检查是否存在?

时间:2011-08-02 14:59:50

标签: jquery

我有一个包含许多选项的选择列表。用户可以选择多个选项并将它们“分配”到另一个选择列表。我遇到的问题是如何检查以确保一个或多个所选选项不是要复制到的列表的一部分?我知道我可以使用以下代码来确定另一个列表中是否存在单个值,即“bar”,但如何检查是否存在多个选定选项中的任何一个?

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

非常感谢。

2 个答案:

答案 0 :(得分:0)

试试这个:

    var otherBoxValues =  $('#other-select-box option').map(function(){ 
        return this.value;
    }); 

    var missingOptions = [];
    $('#select-box option').each(function(){ 
        if ($.inArray(this.value, otherBoxValues) > -1 ) {     
            missingOptions.push(this.value);
        } 
    }); 
   alert(missingOptions.length);

答案 1 :(得分:0)

试试这个

var exists = false;

$('#select-box option:selected').each(function(){
  if($("#target-select-box").find("option[value="+$(this).value+"]").length > 0){
        exists = true;
        return false;
  } 
});