jQueryプラグイン「Select2」を使用したフォームを制作しています。その中で、Select2を適用したセレクトボックスを動的に生成(追加)する場面がありました。
単純にappendするだけではだめだということが分かり、いくつかのサイトを参考に試してみました。
Select2が適用されたセレクトボックスの生成はできましたが、生成と同時に上のセレクトボックスのSelect2が解除されてしまいます。
HTML
1<div class="form-category"> 2 <div class="form-select"> 3 <select id="box1" class="select2"> 4 <option></option> 5 <?php 6 foreach(データーベースから): 7 p(' 8 <option data-id="$key">$value</option> 9 '); 10 endforeach; 11 ?> 12 </select> 13 </div> 14<input type="submit" id="form_add_select"> 15</div>
js
1$(document).ready(function(){ 2 $('#form_add_select').on('click', function(){ 3 $clone = $(".form-select:first-child").clone(true); 4 $clone.find("span").remove(); 5 $clone.find("select").select2(); 6 $clone.appendTo(".form-category"); 7 $("select").select2(); 8 9 10 $('.form-select select').each(function(i){ 11 $(this).attr('id','box' + (i+1)); 12 }); 13 }); 14 $('#form_del_member').on('click', function(){ 15 if($('.form-select').length != 1){ 16 $('.form-select:last-child').remove(); 17 } 18 }); 19});
どうぞよろしくお願いいたします。
【参考にしたサイト】
AdminLTE3 select2を複数生成
[jQuery/Select2]動的なselectボックスにSelect2を適用する方法
jqueryプラグイン "select2" を使ったフォームを動的に追加(複製)すると上手く動かない。(teratail)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2023/01/01 06:02