2013-05-09 86 views
0

我有一个select2组合框,我想从中清除所有项目。select2 - 按类别清除所有不工作的项目

如果我定位的选择一个ID,然后它的工作原理:

$("#clearId").click(function(){ 
    $("#list").empty(); 
}); 

但是,如果我定位的选择一类,它实际上消除了选择从DOM:

$("#clearClass").click(function(){ 
    $(".list").empty(); 
}); 

这可以看出,在下面的演示:http://jsfiddle.net/NvrZu/

我需要能够通过一类为目标的选择。

+0

@PalashMondal看看小提琴... – Ian 2013-05-09 16:33:11

回答

5

当插件包装原始选择时,select的动态添加父项也会获得.list类,因此您不仅要删除select中的选项,还要删除select,因为您正在清空父项元件。

撇除插件添加的包装应该解决这个问题:

$("#clearClass").click(function(){ 
    $(".list").not('.select2-container').empty(); 
}); 

FIDDLE

1
   $("#list").empty(); 
       $("#list").select2('data', null); 
+0

如果除了代码之外还包含(简短)解释,这将是一个更好的答案。 – 2016-02-17 17:02:54

相关问题