将表单序列化为JSON对象

将表单序列化为JSON对象的工具方法:

$(function() {
    //工具方法,可以将指定的表单中的输入项目序列化为JSON数据
    $.fn.serializeJson = function() {
        var serializeObj = {};
        var array = this.serializeArray();
        $(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;
    };
});

应用案例:

$(function() {
    //工具方法,可以将指定的表单中的输入项目序列化为JSON数据
    $.fn.serializeJson = function() {
        var serializeObj = {};
        var array = this.serializeArray();
        $(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;
    };
    
    //绑定事件
    $("#btn").click(function() {
        var json = $("#searchForm").serializeJson();//{id:xx,name:yy,age:zz}
    });
});

 

posted @ 2017-11-28 16:41  valuestack  阅读(181)  评论(0)    收藏  举报