我正在使用select2版本4.0.2(rc1)
我所看到的是,当使用带有<ul id="MenuID">
<li> <a href="index.html"> Home </li>
<li> <a href="index.html"> Forum</li>
<li> <a href="index.html"> Website</li>
</ul>
的select2时,打开下拉菜单然后从DOM中动态删除选择,菜单就会一直存在。
您可以通过专注于控制来查看the select2 examples中发生的事情,以便您查看时区选项,然后在控制台中输入isMultple=true
。选项列表很棒。
编辑:以上是我正在尝试解决的问题的一个示例。在我的情况下发生的事情是dom被操作以通过框架移除选择框,使得在它发生之前我无法挂钩。我想要做的是找到一种方法来响应被删除的元素,希望我可以手动删除选项列表(如果存在)。
我正试图想出一个干净的方法来处理这个问题。我试着像这样陷入破坏:
$('.s2-example').remove()
但是似乎没有被解雇。
我考虑过使用mutation observer,但这对我来说有些不好意思。有谁能建议一个更好的方法来处理这个?任何意见,将不胜感激。谢谢!
答案 0 :(得分:1)
绝对buried in the documentation (under adapters),但你应该通过将“destroy”传递给jQuery对象的destroy
方法
.select2()
方法
$(".js-example-basic-multiple").select2('destroy');
这会破坏实例。然后,您可以安全地拨打.remove()
$(".js-example-basic-multiple").select2('destroy').remove();