我正在使用jQuery插件Select2.js v3.2,它似乎在元素之前而不是在元素之后插入select2-container
。这导致一些代码假定先前的兄弟要破坏。是否有一个“追加后”选项来初始化容器,所以我知道它将始终附加在元素之后?
答案 0 :(得分:1)
似乎没有办法指定是否在元素之前或之后插入select2-container
。我看到它的方式你有几个选择:
.before(this.container);
更改为.after(this.container);
。初始化select2后,您可以通过将创建的元素移动到DOM中的所需位置来进行跟进。您可能希望隐藏这些元素,直到它们被初始化。您还应该对此进行测试,以确保它不会破坏Select2.js插件。
$('.select2-container').each(function() {
$(this).siblings('.elementSelector').first().after($(this));
});
请注意,修改Select2.js源会使将来升级该库更加痛苦(取决于您的舒适度/专业水平)。我建议您在修改插件之前完全确定问题不在您的代码中。