方法一:
/**
* 序列化元素,返回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);

本文介绍使用jQuery将HTML表单数据转换为JSON格式的两种实现方式。第一种方法通过序列化元素并判断是否将空元素序列化为空字符串来生成JSON。第二种方法则直接利用serializeArray方法获取表单数据并构建JSON对象。这两种方法适用于不同场景的需求。
1237

被折叠的 条评论
为什么被折叠?



