我选择了多个像这样的选择
<select class="js-example-basic-multiple" multiple="multiple" style="width:100%">
<option value="月曜日">月曜日</option>
<option value="火曜日">火曜日</option>
</select>
我像这样初始化它
$(".js-example-basic-multiple").select2();
它工作得很好,但是当我想要克隆它并附加到其他地方时会遇到问题。
var clone_temp = $(".js-example-basic-multiple").clone();
$("#some_wrapper").append( clone_temp );
它仅适用于第一个元素,但克隆元素不起作用。 请帮忙!!!
答案 0 :(得分:4)
追加后运行clone_temp.select2();
会再次初始化插件。
工作Fiddle
我使用的代码:
$('.js-example-basic-multiple').select2();
var clone_temp = $(".js-example-basic-multiple").clone();
$("#some_wrapper").append(clone_temp);
clone_temp.select2()
答案 1 :(得分:0)
您还需要进行深度克隆以克隆数据和事件:https://api.jquery.com/clone/#clone-withDataAndEvents-deepWithDataAndEvents
var clone_temp = $(".js-example-basic-multiple").clone(true, true);
$("#some_wrapper").append( clone_temp );