1. 程式人生 > >jquery實現from表單封裝成json物件

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();
好啦,大功告成!