Jquery选择选项copy生成不同的输出

Jquery选择选项copy生成不同的输出,jquery,html,Jquery,Html,我试图将下拉列表从一个复制到另一个,但当它附加时,它将删除上一个下拉列表中的选项。为什么? 我的代码是: HTML: Fiddle获取元素的克隆,然后追加 $("#options2").append($(this).clone()); 获取元素的克隆,然后追加 $("#options2").append($(this).clone()); 试一试 试一试 使用.clone并记住忽略重复项 $(document).ready(function(){ $('#dropdown').

我试图将下拉列表从一个复制到另一个,但当它附加时,它将删除上一个下拉列表中的选项。为什么?

我的代码是:

HTML:


Fiddle

获取元素的克隆,然后追加

$("#options2").append($(this).clone()); 

获取元素的克隆,然后追加

$("#options2").append($(this).clone()); 
试一试

试一试

使用.clone并记住忽略重复项

 $(document).ready(function(){
    $('#dropdown').on('change',function(){
        $("#dropdown option:selected").each(function(){
            var vThis = $(this);
            // check if already added in the dropdown, dont append again
            var toAppend = true;
            $('#options2 option').each(function(){
                    if($(this).val() == vThis.val())
                    {
                        toAppend = false;
                        return;
                    }
            });

            if(toAppend == true)
                $("#options2").append(vThis.clone());     
        });
    });    
});
使用.clone并记住忽略重复项

 $(document).ready(function(){
    $('#dropdown').on('change',function(){
        $("#dropdown option:selected").each(function(){
            var vThis = $(this);
            // check if already added in the dropdown, dont append again
            var toAppend = true;
            $('#options2 option').each(function(){
                    if($(this).val() == vThis.val())
                    {
                        toAppend = false;
                        return;
                    }
            });

            if(toAppend == true)
                $("#options2").append(vThis.clone());     
        });
    });    
});
试试这个:

$(document).ready(function(){
    $('#dropdown').on('change',function(){
        $("#dropdown option:selected").each(function(){
            if(!$("#options2 option[value="+$(this).val()+"]").length)
            //to remove redundancy
               $("#options2").append($(this).clone());            
        });
    });    
});
试试这个:

$(document).ready(function(){
    $('#dropdown').on('change',function(){
        $("#dropdown option:selected").each(function(){
            if(!$("#options2 option[value="+$(this).val()+"]").length)
            //to remove redundancy
               $("#options2").append($(this).clone());            
        });
    });    
});