Javascript 如何序列化两个表单和整个表
我试图将两个表单数据和整个表序列化在一起。这两个表单数据工作正常,但我无法序列化整个表记录。我附上了代码,我在下面已经试过了 有人能帮我解决这个问题吗 表格1Javascript 如何序列化两个表单和整个表,javascript,php,json,ajax,Javascript,Php,Json,Ajax,我试图将两个表单数据和整个表序列化在一起。这两个表单数据工作正常,但我无法序列化整个表记录。我附上了代码,我在下面已经试过了 有人能帮我解决这个问题吗 表格1 <form class="form-horizontal" id="frmproduct"> <div> <label>Total</label> <input type="text" class="form-control" id="totalcal" name=
<form class="form-horizontal" id="frmproduct">
<div>
<label>Total</label>
<input type="text" class="form-control" id="totalcal" name="totalcal">
</div>
<div>
<label>Subtotal</label>
<input type="text" class="form-control" id="subtotal" name="subtotal">
</div>
</form>
无法按预期方式序列化数据数组
$(“#frmproduct,#frmvendor,table_data”)
将搜索ID为frmproduct
和frmvendor
的HTML元素以及名为table_data
的HTML元素,但它不会神奇地包含您创建的名为table_data
的JavaScript变量
此外,仅用于序列化表单数据
有关可能的解决方案,请查看并将其附加到
\u data
然而,另一个问题是,您的表_数据
是一个复杂的数组,而不是一个简单的对象。你可以试试这个:
_data = $('#frmproduct,#frmvendor').serialize();
_data += '&' + $.param( table_data );
但是我不确定你会得到想要的结果。您可能必须重新构造
表\u数据
问题是您使用“表\u数据”作为CSS选择器,因此它正在搜索元素。只看到这一点,但没有解决方案。仅表单#frmproduct,#frmvendor工作表数据不工作如何将表数据发送到save.php页面sir@paypalkob对这就是我在回答中试图解释的:你不能像那样序列化table_data
。那么如何将表数据发送到save.php页面任何其他方式我尝试了sir结果显示未定义任何其他方式写入表并获取值sir。
var table_data = [];
$('table tbody tr').each(function(row, tr) {
var sub = {
'productcode': $(tr).find('td:eq(0)').text(),
'productname': $(tr).find('td:eq(1)').text(),
'price': $(tr).find('td:eq(2)').text(),
'qty': $(tr).find('td:eq(3)').text(),
'total': $(tr).find('td:eq(4)').text(),
};
table_data.push(sub);
});
// + "&table_data=" + table_data
_data = $('#frmproduct,#frmvendor,table_data').serialize();
var _method;
console.log(_data);
$.ajax({
type: "POST",
url: "save.php",
dataType: "JSON",
data: {
data: _data
},
success: function(data) {}
});
_data = $('#frmproduct,#frmvendor').serialize();
_data += '&' + $.param( table_data );