未提交附加字段值

时间:2018-09-15 19:01:54

标签: php jquery

我在PHP中有一组表单字段。我还添加了jQuery功能来克隆某些字段并将其添加到表单中。但是,在提交表单之后,仅提交原始字段,而不提交通过克隆添加的字段。

PHP

<form id="myForm" method="post" action"...">
   <div class="row contRow">
        <div class="col-md-5">
            <input type="text" id="contactInputName['.$i.']" name="name['.$i.']" value="'.$output['0'].'" class="form-control" placeholder="Name">  &nbsp; &nbsp; 
        </div>

        <div class="col-md-6">
            <input type="text" id="contactInputEmail['.$i.']" name="email['.$i.']" value="'.trim($output['1']).'" class="emlVal form-control"> &nbsp; 
        </div>

        <div class="col-md-1 text-right">
            <span class="btn btn-default rmContact"><i class="fas fa-times fa-fw fa-lg text-danger"></i></span>
        </div>
    </div>

    <div class="row">
        <div class="col-md-12">
            <span id="saveContacts" class="btn btn-success"><i class="fas fa-check fa-fw fa-lg"></i> Save Contacts</span>
            <span id="addRow" class="btn btn-default"><i class="fas fa-plus-circle fa-fw fa-lg"></i> Add More</span>
        </div>
    </div>
</form>

JS

$(document).on("click", "#addRow", function() {
    var lastRow = $("#addContactsForm").find(".contRow").last();
    lastRow.clone().insertAfter(lastRow);
    lastRow.find("input").val("");
});

$(document).on("click", "#saveContacts", function() {
    $(this).closest("form").submit();
});

我想念什么?

1 个答案:

答案 0 :(得分:2)

我会删除id="contactInputName['.$i.']"id="contactInputEmail['.$i.']",因为我看不到需要设置这些属性。

如果使用空键设置名称属性,则会为您生成递增的键。例如

name="name[]"

name="email[]"

这应该消除克隆时复制索引的问题。