【问题标题】:Select2 fuction not working in dynamic form [duplicate]Select2函数不能以动态形式工作[重复]
【发布时间】:2021-02-03 10:03:50
【问题描述】:

大家好,这是我的动态表单,我在此表单中使用 select2 搜索选项,但它不起作用

这个头

         <script src="jquery-3.3.1.min.js" type="text/javascript"></script>

    <!-- Select2 JS -->
    <script src="select2/dist/js/select2.min.js" type="text/javascript"></script>


这是我的动态 html 表单,由于堆栈溢出限制,我无法编写完整代码

  html += `<td><select type="text" name="head[]" class="form-control inst_amount"><option value="">Select Name</option><?php $sql=mysqli_query($con,"SELECT * FROM bank_details order by name");
while($row=mysqli_fetch_array($sql))
{?><option value="<?php echo htmlentities($row['id']);?>"><?php echo htmlentities($row['Name']);?></option><?php }?></select></td>`;
  

这是 select2 库


    <!-- Select2 JS -->
    <script src="select2/dist/js/select2.min.js" type="text/javascript"></script>
    <script type="text/javascript">
    $(document).ready(function(){

        $('.inst_amount').select2();
   });

    </script>

【问题讨论】:

  • 您在控制台中遇到的任何错误?
  • @mehmoodkhan 没有错误只是正常的选择选项即将到来
  • 假设“动态表单”是指它是通过 AJAX 加载的,那么您需要在 AJAX 回调中创建的选择元素上调用 select2()
  • 就在$('.inst_amount').select2(); 之前添加console.log($('.inst_amount').length) - 输出是什么?如果它是 0/零,那么这就是您的问题,在您拨打电话时该元素不存在。术语“动态 html”最近似乎被滥用(仅表示服务器端 html) - 所以请确认您是通过 ajax 加载表单
  • 在这种情况下,问题就像我在之前的评论中描述的那样。有关如何解决该问题的示例,请参阅副本。

标签: javascript jquery ajax


【解决方案1】:

猜你需要将类“inst_amount”添加到你的选择元素中。

【讨论】:

  • 已添加但无法正常工作,先生
猜你喜欢
  • 1970-01-01
  • 2017-07-01
  • 1970-01-01
  • 2012-05-09
  • 2013-08-25
  • 1970-01-01
  • 1970-01-01
  • 2018-01-17
  • 2012-03-12
相关资源
最近更新 更多