Semantic-UIというデザイン系のライブラリを利用しながら下記のコードを作成しております。.btn
をクリックすると.dropdown
要素が動的に追加されていきます。
しかしながら追加された要素については、dropdownが効いてくれません。動的に追加された要素のイベントはそのままでは動作してくれないのは知っていたのですが、ここで
$('.ui.dropdown').dropdown()
を
$(document).ready(function(){$('.ui.dropdown').dropdown()}
としても
実装することができません。どのようにしたら追加でき要素にも$('.ui.dropdown').dropdown()
を当てることができるのでしょうか?
因みにですが、$('.btn').on('click',function(){})
のたびにその中に$('.ui.dropdown').dropdown()
を入れると一応動きはするのですが、処理が尋常ではななく遅くなることが判明しております。そもそもこのやり方自体が適切ではないと感じています。
宜しくお願い申し上げます。
html
1 <head> 2 <script src="https://code.jquery.com/jquery-3.6.0.min.js" integrity="sha256-/xUj+3OJU5yExlq6GSYGSHk7tPXikynS7ogEvDej/m4=" crossorigin="anonymous"></script> 3 <script src="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.js" integrity="sha512-dqw6X88iGgZlTsONxZK9ePmJEFrmHwpuMrsUChjAw1mRUhUITE5QU9pkcSox+ynfLhL15Sv2al5A0LVyDCmtUw==" crossorigin="anonymous" referrerpolicy="no-referrer"></script> 4 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/semantic-ui/2.4.1/semantic.min.css" integrity="sha512-8bHTC73gkZ7rZ7vpqUQThUDhqcNFyYi2xgDgPDHc+GXVGHXq+xPjynxIopALmOPqzo9JZj0k6OqqewdGO3EsrQ==" crossorigin="anonymous" referrerpolicy="no-referrer" /> 5 </head> 6 <body> 7 <div class="dropdown_wrapper"> 8 <div class="ui selection dropdown"> 9 <input type="hidden" name="gender"> 10 <i class="dropdown icon"></i> 11 <div class="default text">Gender</div> 12 <div class="menu"> 13 <div class="item" data-value="1">Male</div> 14 <div class="item" data-value="0">Female</div> 15 </div> 16 </div> 17 </div> 18 <div> 19 <button class="btn">push</button> 20 </div> 21 <script type="text/javascript"> 22 $('.ui.dropdown') 23 .dropdown() 24 ; 25 $('.btn').on('click',function(){ 26 var elem ='\ 27 <div class="ui selection dropdown">\ 28 <input type="hidden" name="gender">\ 29 <i class="dropdown icon"></i>\ 30 <div class="default text">Gender</div>\ 31 <div class="menu">\ 32 <div class="item" data-value="1">Male</div>\ 33 <div class="item" data-value="0">Female</div>\ 34 </div>\ 35 </div>' 36 $('.dropdown_wrapper').append(elem); 37 }) 38 </script> 39 </body>
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/09/15 07:46
2021/09/15 07:46
2021/09/15 07:53
2021/09/15 07:55
2021/09/15 07:56
2021/09/15 07:59
2021/09/15 08:02
2021/09/15 08:09
2021/09/15 08:10
2021/09/15 08:12
2021/09/15 08:14
2021/09/15 08:14
2021/09/15 08:22
2021/09/15 08:41
2021/09/15 08:42
2021/09/15 08:55 編集
2021/09/15 11:02
2021/09/15 12:07 編集
2021/09/15 12:07
2021/09/16 00:30