首页 > 解决方案 > 添加带有日期字段jQuery的动态行

问题描述

我有一个正在开发的 Web 应用程序,它包括一个已经实现的动态添加和删除行。但是,我在将日期添加到动态行时遇到了困难。在第一个静态行中,datetimepicker 工作,但在动态行上它不起作用,就好像它没有读取它一样。

下面是我的代码

 <tbody class="body">
                <tr>
                    <td><input type="hidden" class="form-control" name="count[]" value="1"><span>1</span></td>
                    <td><input type="text" class="form-control stockDate" id="stockDate" name="date[]"></td>
                    <td><input type="text" class="form-control stock" id="stock" name="stock[]"></td>
                    <td><input type="text" class="form-control price" id="price" name="price[]"></td>
                    <td><input type="hidden" value="{{ $c->id }}" name="vehicle_id[]"></td>
                </tr>
      </tbody>

这是我的jQuery

<script type="text/javascript">

$('.stockDate').datepicker({
    dateFormat: 'yyyy-mm-dd'
});

$('#add-row').click(function() {
        var no = ($('.body tr').length-0)+1;
        var tr = '<tr><td><input type="hidden" class="form-control" name="count[]" value="'+no+'"><span>'+no+'</span></td>'+
             '<td><input type="text" class="form-control stockDate" id="stockDate" name="date[]"></td>' +
                  '<td><input type="text" class="form-control stock" name="stock[]"/></td>' +
                  '<td><input type="text" class="form-control price" name="price[]"/></td>' +
                  '<td><input type="hidden" value="{{ $c->id }}" name="vehicle_id[]"></td></tr>';
        $('.body').append(tr);
    });


</script>

有关如何解决此问题的任何想法。

谢谢

标签: phpjqueryhtmldynamicbootstrap-datepicker

解决方案


在名称属性中写入索引:

<tbody class="body">
                <tr>
                    <td><input type="text" class="form-control stockDate" id="stockDate" name="date[1]"></td>
                    <td><input type="text" class="form-control stock" id="stock" name="stock[1]"></td>
                    <td><input type="text" class="form-control price" id="price" name="price[1]"></td>
                </tr>
      </tbody>

很简单...


js代码:

$('#add-row').click(function() {
        var no = ($('.body tr').length-0)+1;
        var tr = '<tr><td><span>'+no+'</span></td>'+
             '<td><input type="text" class="form-control stockDate" id="stockDate" name="date['+no+']"></td>' +
                  '<td><input type="text" class="form-control stock" name="stock['+no+']"/></td>' +
                  '<td><input type="text" class="form-control price" name="price['+no+']"/></td>' +
                  '</tr>';
        $('.body').append(tr);
    });

推荐阅读