如何序列化这样的表格?
how to serialize form like this?
我知道有很多这样的问题,但我找不到解决方案抱歉新手...
我有可以通过 javascript
添加和删除行的表格
<form id="form1">
<div class="row">
<input name="suppliername" />
<input name="supplierproduct" />
<div>
<div class="row">
<input name="suppliername" />
<input name="supplierproduct" />
<div>
<div class="row">
<input name="suppliername" />
<input name="supplierproduct" />
<div>
</form>
我需要将此表单序列化为对象数组,如下所示
var data = [{suppliername : 'sup1', supplierproduct : 'prod1'}, {suppliername : 'sup1', supplierproduct : 'prod1'}, {suppliername : 'sup1', supplierproduct : 'prod1'}]
我将 post 通过 jquery ajax post 获取数据......?
服务器将使用 asp mvc ..
控制器
public void createsup(List<Supplier> model)
{
// something
}
供应商等级
public class Supplier
{
public string suppliername {get; set;}
public string supplierproduct{get; set;}
}
帮忙谢谢...
您可以使用 map()
创建对象数组,其中包含 .row
中 input
字段的属性和值。试试这个:
var data = $('.row').map(function() {
var obj = {};
$(this).find('input').each(function() {
obj[this.name] = this.value;
});
return obj;
}).get();
我知道有很多这样的问题,但我找不到解决方案抱歉新手... 我有可以通过 javascript
添加和删除行的表格<form id="form1">
<div class="row">
<input name="suppliername" />
<input name="supplierproduct" />
<div>
<div class="row">
<input name="suppliername" />
<input name="supplierproduct" />
<div>
<div class="row">
<input name="suppliername" />
<input name="supplierproduct" />
<div>
</form>
我需要将此表单序列化为对象数组,如下所示
var data = [{suppliername : 'sup1', supplierproduct : 'prod1'}, {suppliername : 'sup1', supplierproduct : 'prod1'}, {suppliername : 'sup1', supplierproduct : 'prod1'}]
我将 post 通过 jquery ajax post 获取数据......? 服务器将使用 asp mvc ..
控制器
public void createsup(List<Supplier> model)
{
// something
}
供应商等级
public class Supplier
{
public string suppliername {get; set;}
public string supplierproduct{get; set;}
}
帮忙谢谢...
您可以使用 map()
创建对象数组,其中包含 .row
中 input
字段的属性和值。试试这个:
var data = $('.row').map(function() {
var obj = {};
$(this).find('input').each(function() {
obj[this.name] = this.value;
});
return obj;
}).get();