如何获取表单数据作为jQuery中的对象

这个问题在这里已经有了答案:

  • 使用jQuery将表单数据转换为JavaScript对象50个答案

  • 你尝试过“serializeArray”吗? 这给你一个名称和值的数组。 如果你想:你可以把它变成一个对象:

    var paramObj = {};
    $.each($('#myForm').serializeArray(), function(_, kv) {
      paramObj[kv.name] = kv.value;
    });
    

    (我将不得不再次检查jQuery如何处理数组;我认为它将它们编码为Javascript数组值,但我不是100%确定的。)

    编辑啊不,它不会像数组一样设置多值参数 - 您可以重复使用相同的名称。 因此,make-an-object代码应该如下所示:

    var paramObj = {};
    $.each($('#myForm').serializeArray(), function(_, kv) {
      if (paramObj.hasOwnProperty(kv.name)) {
        paramObj[kv.name] = $.makeArray(paramObj[kv.name]);
        paramObj[kv.name].push(kv.value);
      }
      else {
        paramObj[kv.name] = kv.value;
      }
    });
    

    (或类似的东西;可能会被挤压一点。)


    你可以看看serializeArray函数:

    $('#form_id').serializeArray()
    
    链接地址: http://www.djcxy.com/p/46327.html

    上一篇: How to get form data as a object in jquery

    下一篇: Serialize form data to JSON