提交表单为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传递