Bootstrap 多选克隆问题

Bootstrap multiselect cloning issue

我的一个 select 上有一个 multiselect,按照这里的详细设置,它工作正常,http://davidstutz.github.io/bootstrap-multiselect/

我使用包含此 multiselect.

的 jquery 克隆方法克隆了一个 div
  $("select[id^=Test]").multiselect();

克隆后,克隆的 select 引用原始 select。我还将克隆的 select 的 ID 更改为这不是问题。 我已经尝试了 multiselect 方法,例如重建,但仍然没有用。我创建了一个 fiddle 来显示这个问题。 https://jsfiddle.net/zaa35zgt/3

Bootstrap multiselect 改变包含 div 的 HTML。按照您的方式克隆它并不是一个好主意,因为您也将克隆所有数据和事件。相反,您可以克隆原始 select,然后对其应用 multiselect。

像这样(稍微修改了 fiddle):

$("select[id^=Test]").multiselect();

$($('[id*="btnClone"]')).on("click", function() {

     var clonedSelect = $('div[id^="clonedDiv"]').last().find('select').clone();

     var newDiv = $('<div></div>').append(clonedSelect);

     $('div[id^="clonedDiv"]').last().after(newDiv);

     newDiv.find('select').multiselect();

});