Javascript jQueryAjax帖子没有得到动态添加的输入,输入有名称,我尝试过其他解决方案

Javascript jQueryAjax帖子没有得到动态添加的输入,输入有名称,我尝试过其他解决方案,javascript,jquery,html,Javascript,Jquery,Html,Ajax Post请求只获取底部动态添加的输入字段中的第一个字段,其他所有字段都被忽略 我尝试了.on().live().submit()函数,但得到了相同的结果。我的php文件包含一个print\r($\u POST)和其他内容都不会放入控制台 -我已将完整代码作为整个表放在pastebin上,并包含用于添加新输入的脚本 这是进行呼叫的代码: $('input#submitButton').on('click', function(e) { e.preventDefault(); // a

Ajax Post请求只获取底部动态添加的输入字段中的第一个字段,其他所有字段都被忽略

我尝试了
.on()
.live()
.submit()
函数,但得到了相同的结果。我的php文件包含一个
print\r($\u POST)
和其他内容都不会放入控制台

-我已将完整代码作为整个表放在pastebin上,并包含用于添加新输入的脚本

这是进行呼叫的代码:

$('input#submitButton').on('click', function(e)  {

e.preventDefault(); // avoid to execute the actual submit of the form.

var form = $('form#orderForm');
var url = form.attr('action');

$.ajax({
  type: "POST",
  url: url,
  data: form.serialize(), // serializes the form's elements.
  success: function(data)
  {

    console.log(data);

  }
});


});

我的预期结果是能够将所有动态添加的字段及其名称作为一个数组发布,或者将所有动态添加的字段发布到它们自己的数组中。

这是一个主要问题,因为html的结构是任意的,并且您缺少项目信息容器的end div标记。修复这些问题,它将运行。您还可能希望继续,以0开头开始第一个项目信息,并将计数器设置为1,以便在收到信息后更容易在后端分离

将表单标记移动到第一个容器下:

<div class="container">
    <form id="orderForm" method="POST" action="test.php">
        <h2>Address Information</h2>

地址信息
结束标记

                    <input type="submit" id="submitButton" name="submitButton" value="Submit">

                </div>
            </div>
    </form>
</div>

运行已清理代码的完整示例:

功能测试(){
var billName=document.getElementById('bill_name');
var shipName=document.getElementById('ship_name');
var billLine1=document.getElementById('bill_line_1');
var shipLine1=document.getElementById('ship_line_1');
var billLine2=document.getElementById('bill_line_2');
var shipLine2=document.getElementById('ship_line_2');
var billLine3=document.getElementById('bill_line_3');
var shipLine3=document.getElementById('ship_line_3');
var billLine4=document.getElementById('bill_line_4');
var shipLine4=document.getElementById('ship_line_4');
var billCounty=document.getElementById('bill_county');
var shipCounty=document.getElementById('ship_county');
var billPostcode=document.getElementById('bill_post');
var shipPostcode=document.getElementById('ship_post');
var billTele=document.getElementById('bill_telephone');
var shipTele=document.getElementById('ship_telephone');
var billEmail=document.getElementById('bill_email');
var shipEmail=document.getElementById('ship_email');
shipName.value=billName.value;
shipLine1.value=billLine1.value;
shipLine2.value=billLine2.value;
shipLine3.value=billLine3.value;
shipLine4.value=billLine4.value;
shipCounty.value=billCounty.value;
shipPostcode.value=billPostcode.value;
shipTele.value=billTele.value;
shipmail.value=bilemail.value;
}
$('input#submitButton')。打开('click',函数(e){
e、 preventDefault();//避免执行表单的实际提交。
变量形式=$('form#orderForm');
var url=form.attr('action');
var test=form.serialize();
警报(测试);
});
$(文档).ready(函数(){
var计数器=0;
$(“#添加行”)。在(“单击”上,函数(){
var newRow=$(“”);
var cols=“”;
cols+='';
cols+='';
cols+='';
cols+='';
newRow.append(cols);
$(“table.order list”).append(newRow);
计数器++;
});
$(“table.order list”)。在(“click”、“.ibtnDel”上,函数(事件){
$(this).tr.remove();
计数器-=1
});
});

地址信息
账单名称
计费线路1
计费线路2
计费第3行