2013-04-14 41 views
0

我有一个表格将包含一个HTML表格,允许用户添加或删除行。这将工作正常。如何在表单提交时发布动态生成的html表格?

/*add row*/ 
function add_Items(itemtypeid, itemid, reqqty) { 
    var mode = 1; 
    var pstSettings = { 
     url: 'ajax_Items/' + itemid + '/' + mode 
     callback: function (data) { 
      var dyntd = ""; 
      var hidval = ""; 
      var $response = $(data); 
      var resitmname = $response.filter('#Item_Name').text(); 
      var resitmdesc = $response.filter('#Item_Descrip').text(); 
      dyntd = "<td><label>" + itemid + "</label></td>"; 
      dyntd += "<td><label>" + resitmname + "</label></td>"; 
      dyntd += "<td><label>" + resitmdesc + "</label></td>"; 
      dyntd += "<td><label>" + reqqty + "</label></td>"; 
      hidval += '<input type="hidden" name="itemid" value=' + itemid + ' />'; 
      hidval += '<input type="hidden" name="reqitem" value=' + reqqty + ' />'; 
      dyntd += '<td>' + hidval + '<input type="button" name="min" class="minus" value="-" />'; 

      $('.item-result-table tr:last').after('<tr>' + dyntd + '</tr>'); 
     } 
    }; 
    post_Call(pstSettings); 
} 
} 

/* delete row */ 
$(document).ready(function() { 
    $('.item-result-table').delegate('.minus', 'click', function (e) { 
     $(this).parent().parent().remove(); 
    }); 
}); 

但现在我的问题是如何提交表格中的html表格,因为所有的html标签都没有输入类型标签。我已经添加了一个隐藏的标签。但它也造成了只有第一个元素,其他元素被忽略的问题。有没有其他方法可以提交这个html表格数据?

回答

1

你只得到一个输入是因为你定义它错误的原因,你需要将它定义为数组:

<input type="hidden" name="itemid[]" value=' + itemid + ' /> 
<input type="hidden" name="reqitem[]" value=' + reqqty + ' />' 

,然后在PHP中:

$_POST['itemid'][0]; 
+0

感谢您的回复,我们知道itemid [] – manuthalasseril

0

我认为你可以使用$.ajax jquery函数。你可以在这样的形式序列化所有的输入:

$("#btn_submit").on('click', function() { 
    $.ajax({ 
     url: $(this).closest("#div_content").find("#form").attr('action'), 
     type: 'post', 
     data: $(this).closest("#div_content").find("#form").serialize(), 
    }).done(function(msg) { 
     //console.log("ok"); 
    }).fail(function(jqXHR, textStatus) { 
     //console.log("fail"); 
    }); 
}); 

随着“连载”你可以给所有的变量和控制器上,你可以阅读$_POST变量和输入的名称。

+0

的计数感谢您的回复。首先听听序列化输入。我将尝试这一个。 – manuthalasseril