我有一个select2组合框,我想从中清除所有项目。
如果我使用ID定位选择,那么它可以工作:
$("#clearId").click(function(){
$("#list").empty();
});
但是,如果我使用类来定位select,它实际上会从dom中删除select:
$("#clearClass").click(function(){
$(".list").empty();
});
这可以在以下演示中看到:http://jsfiddle.net/NvrZu/
我需要能够通过课程来定位选择。
答案 0 :(得分:5)
当插件包装原始选择时,select的动态添加父级也会获得.list
类,所以你不仅要删除select中的选项,还要选择select,因为你是清空父元素。
排除插件添加的包装应解决该问题:
$("#clearClass").click(function(){
$(".list").not('.select2-container').empty();
});
答案 1 :(得分:1)
$("#list").empty();
$("#list").select2('data', null);
答案 2 :(得分:0)
http://jsfiddle.net/mohammadAdil/NvrZu/1/
$("#clearClass").click(function(){
$("select.list").empty();
});
您确实有其他元素.list
,您不想清空
这是插件使用类列表 -
生成的div<div class="select2-container list"
请参阅控制台 - &gt; http://jsfiddle.net/mohammadAdil/NvrZu/4/