2

I don't know if I am using the .after incorrectly but it is my understanding that it should display the element after the one I specify? - the hello world selection box after the Option1 select?

<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();

fiddle here - http://jsfiddle.net/jHvmg/4/

What am I missing? TIA

4

3 に答える 3

1

プラグインによって生成された HTML を見ると、実際には選択が非表示になり、その後にレンダリングされる実際の選択である div が追加されます。

したがって、実際には次のようになります。

<select id="cselect" style="display: none;">
    <option value="Option 1">Option 1</option>
</select>
<select id="dselect" style="display: none;">
    <option>Hello World</option>
</select>
<div class="chosen-container chosen-container-single" style="width: 94px;" title="" id="dselect_chosen"> ... </div>
<div class="chosen-container chosen-container-single" style="width: 76px;" title="" id="cselect_chosen"> ... </div>

実際には、cselect の前に dselect を挿入することになります。

于 2013-09-11T18:10:46.007 に答える