如何序列化这样的表格?

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() 创建对象数组,其中包含 .rowinput 字段的属性和值。试试这个:

var data = $('.row').map(function() {
    var obj = {};
    $(this).find('input').each(function() {
        obj[this.name] = this.value;
    });
    return obj;
}).get();

Example fiddle