Как инициализировать select2 на другой элемент? - PullRequest
0 голосов
/ 06 февраля 2020

У меня есть HTML структура, как показано ниже.

<div id="a"></div>
<select id="b">
  <option>aaa</option>
  <option>bbb</option>
  <option>ccc</option>
</select>

И после того, как я инициализирую select2 с $('#b').select2();, моя структура DOM изменяется на

<div id="a"></div>
<select id="b" data-select2-id="b" tabindex="-1" class="select2-hidden-accessible" aria-hidden="true">
  <option data-select2-id="2">aaa</option>
  <option>bbb</option>
  <option>ccc</option>
</select>
<span class="select2 select2-container select2-container--default" dir="ltr" data-select2-id="1" style="width: 93px;">
  //
  // Child elements created by select2
  //
</span>

Принимая во внимание, что мне нужно, чтобы вновь сгенерированные <span> и его дочерние элементы были помещены внутри <div id="a"></div>

Более простым способом было бы добавить <span> после инициализации, используя $('#a').append($('.select2-container'));, но я ' Интересно знать, если select2 предоставляет возможность в своем плагине для достижения того же самого.

Codepen

...