【问题标题】:Multiple instances using select2使用 select2 的多个实例
【发布时间】:2014-04-10 18:23:26
【问题描述】:

我一直在尝试为一个系统开发一个界面,用户应该在其中添加一些带有各自数量、序列号和观察结果的项目。

所以,我要显示一个只有一行的表格,但是单击按钮添加行,底部会添加另一行。

我在一个列中使用了 Select2,以便用户可以在同一输入中添加多个序列号,并且它可以作为一个魅力。但是,当我单击按钮添加行时,添加了另一行,但插件没有启动。我认为这可能是一些简单的事情,但我并没有真正习惯做 jQuery。

希望你们能理解我的问题,伙计们。

<script type="text/javascript"><!--adição e exclusão das linhas da tabela-->
$(document).ready(function(){
    var i=1;
    function Adicionar(){   
        $('#tab_logic tbody').append("<tr id='addr"+(i+1)+"'><td><select class='selectPretty form-control' placeholder='Descrição' name='material"+i+"' required><option></option><option value='Rádio VHF PRO 5150 Motorola'>Rádio VHF PRO 5150 Motorola</option><option value='Rádio VHF PRO 5100 Motorola'>Rádio VHF PRO 5100 Motorola</option><option value='Mesa de Som 4 canais Maxtor'>Mesa de Som 4 canais Maxtor</option><option value='Microfone sem fio Cantabem'>Microfone sem fio Cantabem</option></select></td><td><input  name='qtde"+i+"' type='number' placeholder='Qtde'  class='form-control'></td><td><select class='selectPretty form-control' name='serial"+i+"' multiple='multiple' placeholder='Serial'><option value='3859'>3859</option><option value='4568'>4568</option><option value='7741'>7741</option><option value='1259'>1259</option><option value='9965'>9965</option></select></td><td><input  name='obs"+i+"' type='text' placeholder='Observações'  class='form-control'></td> <td><button class='btn btn-sm btn-danger btnExcluir'><i class='glyphicon glyphicon-remove'></i></button></td></tr>");
        i++;
        $(".btnExcluir").bind("click", Excluir);
        $(".selectPretty").select2();
    };
        $("#addItem").bind("click", Adicionar);
    function Excluir(){
        var par = $(this).parent().parent(); //tr
        par.remove();
    };
    function Select(){
        $(".selectPretty").select2();
    };
    $(".btnExcluir").bind("click", Excluir);
});
</script>

【问题讨论】:

  • 安装Firebug之类的看看控制台,检查添加新行时是否有错误。
  • 你能给我们看一个关于 jsFiddle 的例子吗?
  • 哥们,我无法在 jsFiddle 上上传我的示例,但是我将它上传到我在互联网上的服务器上,您可以点击下面的链接查看它:http://.f59.com.br/ccom/criar-cautela.php

标签: jquery forms jquery-select2


【解决方案1】:

我更新了 jsbin 中的一些代码

  $("#tab_logic").find("tbody tr").find("td:eq(0)").each(function(index,val){
          var name = $($(this).html()).prop('name');
        $(':input[name='+name+']').select2();
      });   

  $("#tab_logic").find("tbody tr").find("td:eq(2)").each(function(index,val){
          var name = $($(this).html()).prop('name');
        $(':input[name='+name+']').select2();
  });

JSBIN http://jsbin.com/wicutoti/17/edit

【讨论】:

  • 亲爱的@holmes2136,感谢您的帮助。这对我来说非常有用,它就像一个魅力。我花了一些时间让它工作,但这是因为我试图混合我的代码和你的代码,当我只使用你的代码时,它起作用了,然后我添加了一些代码。我很抱歉延迟回答,但我正忙于另一个项目。感谢所有试图帮助我的人。
猜你喜欢
  • 2015-08-26
  • 1970-01-01
  • 1970-01-01
  • 2020-10-22
  • 2014-08-14
  • 1970-01-01
  • 1970-01-01
  • 2017-06-25
  • 2013-01-09
相关资源
最近更新 更多