在表单提交数据时,我们会用到
升级版,支持多选
下面通过$("form").serializeJson()来获取表单的值就是json格式了
$("form").serialize()
但是这里获取到的值是以字符串拼接的,可以通过自定义一个方法将获取的值转为Json格式
简单版,不支持多选
(function($){
$.fn.serializeJson=function(){
var serializeObj={};
$(this.serializeArray()).each(function(){
serializeObj[this.name]=this.value;
});
return serializeObj;
};
})(jQuery);升级版,支持多选
(function($){
$.fn.serializeJson=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);下面通过$("form").serializeJson()来获取表单的值就是json格式了

本文介绍了一种将HTML表单提交的数据转换成JSON格式的方法,包括一个简单的实现和一个支持多选字段的升级版实现。
2298

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



