Jquery克隆表单字段并从数据库插入相应的数据

Jquery克隆表单字段并从数据库插入相应的数据,jquery,Jquery,在我的联系人页面中,我使用克隆功能复制表单的行 <div class="container"> <div class="row"> <div class="col-md-12"> <span id="cloneRowTest" class="label label-primary pointer">

在我的联系人页面中,我使用克隆功能复制表单的行

<div class="container">
    <div class="row">
        <div class="col-md-12">
            <span id="cloneRowTest" class="label label-primary pointer">
                Add <span class="glyphicon glyphicon-plus"></span>
            </span>
        </div>
    </div>
    <!-- ROW 5 CLONABLE-ROW-LABEL -->
    <div class="row cust-gutters clonable-row-label hidden">
        <div class="col-md-2">
            <label class="control-label" for="mansione">Name</label>
        </div>
        <div class="col-md-3">
            <label class="control-label" for="nominativo">Phone</label>
        </div>
        <div class="col-md-2">
            <label class="control-label" for="telefono">Email</label>
        </div>
    </div>
    <!-- ROW 5 CLONABLE-ROW -->
    <div class="row cust-gutters clonable-row hidden">
        <div class="col-md-2">
            <input type="text" class="form-control input-sm" name="contacts[name][]" placeholder="..." />
        </div>
        <div class="col-md-3">
            <input type="text" class="form-control input-sm" name="contacts[phone][]" placeholder="..." />
        </div>
        <div class="col-md-2">
            <input type="text" class="form-control input-sm" name="contacts[email][]" placeholder="..." />
        </div>
    </div>
</div>
克隆行的代码并插入相应的数据

$.each(data, function(idx, obj) {
    $('#cloneRowTest').trigger('click');
    //alert(); // With this alert are cloned the correct number of rows!  (timeout problem?)
    $.each(obj, function(k, v) {
        $('input[name="contacts[' + k + '][]"]').val(v);
    });
});
  • 仅创建一行(应为2)
  • 当我可以克隆正确的行时,行的所有字段都是相同的(数据对象的最后一行)
  • 我怎么能这样做?
    谢谢你

    我知道这并不是对实际问题的回答:但我创建了一个jquery插件(),它几乎满足了你的需要,它负责收集处理(即根据数据复制html)隔离你在上一个
    问题中更新值的输入行。否则,您将使用相同的名称设置所有输入iteration@charlietfl-如何隔离输入行?感谢您只在最后一行输入目标。@charlietfl-不幸的是,我不知道该怎么做。你能告诉我怎么做吗?非常感谢。
    
    data = [
        Object { name="Foo",  phone=87654321,  email="foo@email.com"},
        Object { name="Bar",  phone=12345678,  email="bar@yahoo.com"}
    ]
    
    $.each(data, function(idx, obj) {
        $('#cloneRowTest').trigger('click');
        //alert(); // With this alert are cloned the correct number of rows!  (timeout problem?)
        $.each(obj, function(k, v) {
            $('input[name="contacts[' + k + '][]"]').val(v);
        });
    });