方法一:
/**
* 序列化元素,返回JSON对象 参数:flag 空元素是否系列化成空字符串
*/
$.fn.toJson = function (flag) {
var json = {};
var fields = this.serializeArray();
$.each(fields, function () {
if (json[this.name]) {
if (!json[this.name].push) {
json[this.name] = [json[this.name]];
}
if (flag || (!flag && this.value != "")) {
json[this.name].push(this.value || "");
}
} else {
if (flag || (!flag && this.value != "")) {
json[this.name] = this.value || "";
}
}
});
return json;
};
方法二:
(function($){
$.fn.formToJson=function(){var serializeObj={};
var array=this.serializeArray();
var str=this.serialize();
$(array).each(function(){
if(serializeObj[this.name]){
if($.isArray(serializeObj[this.name])){
serializeObj[this.name].push(this.value);
}else{
serializeObj[this.name]=[serializeObj[this.name],this.value];
}
}else{
serializeObj[this.name]=this.value;
}
});
return serializeObj;
};
})(jQuery);