jquery - jquery .after 在这种情况下应该如何工作?

标签 jquery jquery-chosen

我不知道我是否错误地使用了 .after,但我的理解是它应该在我指定的元素之后显示元素? - Option1 选择后的 hello world 选择框?

<select id="cselect" >
<option value="Option 1">Option 1</option>

</select>

$('#cselect').chosen();

var test = '<select id="dselect" ><option>Hello World</option></select>';  

$('#cselect').after(test);

$('#dselect').chosen();

在这里摆弄 - http://jsfiddle.net/jHvmg/4/

我错过了什么? TIA

最佳答案

这与所选插件有关。当您第一次在第一个 select 上调用 chosen 时,您最终会得到以下结果(伪代码):

<select id="select1"></select>
<div id="chosenForSelect1"></div>

附加新的选择后,您将得到以下内容:

<select id="select1"></select>
<select id="select2"></select>
<div id="chosenForSelect1"></div>

然后在第二个 select 上调用 .chosen() 并最终得到以下结果:

<select id="select1"></select>
<select id="select2"></select>
<div id="chosenForSelect2"></div>
<div id="chosenForSelect1"></div>

因此,实际的 select 元素是在第一个元素之后添加的,但支持所选插件的 div 却出现了问题。最好将新的 select 附加到容器,为每个 select 添加一个容器,或者附加在所选插件的 html 之后。

关于jquery - jquery .after 在这种情况下应该如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18748075/

相关文章:

jquery - 验证错误消息样式

javascript - 选择.js : automatically select freshly created value in ajax callback

jquery - 选择 Bootstrap 3 无法正常工作

javascript - 根据开始和结束位置突出显示字符串中的子字符串

javascript - jQuery 选择 : Multiselect with remote data

javascript - 检测可滚动下拉列表的末尾

javascript - 使用 jQuery Chosen 时隐藏选择列表选项值

javascript - 如何将特定的表值传递给我们从数据库表中获取的 ajax?

javascript - 检查屏幕上是否存在 html 元素

jquery - 单击页面上任意位置时如何隐藏切换(div)