玩转web之json(五)---将表单通过serialize()方法获取的值转成json

form表单有一个serialize()方法,可以序列化表单的值,但是jquery提供的这个方法会把数据序列化为类似下面的形式:

a=1&b=2&c=3&d=4

jquery并没有提供将表单数据序列化为json的方法,所以需要我们自己封装一下,下面给出代码和测试样例,先写一个js文件:

$.ajaxSetup({
    contentType: "application/x-www-form-urlencoded; charset=utf-8"
});
var DataDeal = {
//将从form中通过$(‘#form‘).serialize()获取的值转成json
		   formToJson: function (data) {
			   data=data.replace(/&/g,"\",\"");
               data=data.replace(/=/g,"\":\"");
               data="{\""+data+"\"}";
               return data;
		    },
};

使用方法:先在页面导入上面的js文件,然后

        var data=$(‘#addf‘).serialize();//获取值
        data= decodeURIComponent(data,true);//防止中文乱码
        var json=DataDeal.formToJson(data);//转化为json


玩转web之json(五)---将表单通过serialize()方法获取的值转成json,古老的榕树,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。