jquery实现from表单封装成json对象

经常会有这样的需求,就是使用ajax异步提交表单数据,我们往往会将他们封装成json发送。

那么如何简单而又快速的将表单封装成json呢?

我们先来看jquery给我们提供的一个方法:serializeArray()

该方法的用途就是将表单封装成一个数组。

所以,我们只需要在这个方法的基础,稍作修改。

核心代码

$.fn.serializeObject = function () {
        var o = {};
        var a = this.serializeArray();
        $.each(a, function () {
            if (o[this.name]) {
                if (!o[this.name].push) {
                    o[this.name] = [o[this.name]];
                }
                o[this.name].push(this.value || '');
            } else {
                o[this.name] = this.value || '';
            }
        });
        return o;
    };

测试

var formData = $("#editForm").serializeObject();


好啦,大功告成!


你可能感兴趣的:(个人专栏)