提交表单为json对象的方法

遇到一个提交表单的问题,一开始提交的数据总是json字符串,传不到后台方法,找了好多方法。

上个项目中我是直接表单序列化(serialize()方法),这是一个字符串类型,这次同样想表单序列化实现ajax请求,可惜不能成功。

后来找到一方法,可以直接表单变成json对象进行ajax请求:

$.fn.serializeObject = function()
{
  var o = {};
  var a = this.serializeArray();
  $.each(a, function() {
    if (o[this.name]) {
      if (!o[this.name].push) {
        o[this.name] = [o[this.name]];
        }
      o[this.name].push(this.value || '');
    } else {
    o[this.name] = this.value || '';
    }
  });
return o;
};

此方法可以直接对表单使用,变成json对象

传值通过JSON.stringify(formParam)进行data传递

 

posted on 2018-08-16 10:23  金翅鸟  阅读(2325)  评论(0编辑  收藏  举报