Jquery表单提交JSON数据

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

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法一:

/**
 * 序列化元素,返回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);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值