使用jQuery.ajax()分别在多个表行中提交数据

时间:2014-04-28 08:30:03

标签: jquery html ajax

目前我可以提交表单,只要表格中只有一行即可。如果我添加第二行它将无法正常工作,我收到错误。我想要实现的是分别在每个表行中发布数据,但只按一个按钮。你可以在下面看到我的HTML标记。

<form>
  <table>
    <tr>
      <td><input type="hidden" name="FirstName" id="FirstName" value="Bob">Bob</td>
      <td><input type="hidden" name="Surname" id="Surname" value="Hoskins">Hoskins</td>
    </tr>

    <tr>
      <td><input type="hidden" name="FirstName" id="FirstName" value="Bruce">Bruce</td>
      <td><input type="hidden" name="Surname" id="Surname" value="Wayne">Wayne</td>
    </tr>
  </table>
</form>

我被告知我可以使用jQuery AJAX提交数据。我想知道是否有办法编写这个jQuery,以便它定位第一个表行,提交数据,然后第二行,再次提交数据,依此类推,直到所有行都在循环中单独提交。以下是我提交数据的基本代码,但需要使用我的HTML。

$.ajax({
   type: "POST",
   cache: false, 
   url: "WuFoo.aspx",
   data: data,
   success: success
});

1 个答案:

答案 0 :(得分:1)

我认为您可以这样做,首先将ID应用于您的表并循环遍历每个tr

$('#TableID > tr').each(function() {
    var postData = {
    'FirstName':$(this).find('#FirstName').val(),
    'SurName':$(this).find('#Surname').val()
    };
    $.ajax({
    type: "POST",
    cache: false, 
    url: "WuFoo.aspx",
    data: postData ,
    success: success
    });
 });

编辑:我已更新了我的答案,我不确定这是最好的方法,但这样可以发布您的数据。