jquery提供的serialize方法能夠實現。 ...
jquery提供的serialize方法能夠實現。
$("#searchForm").serialize();
但是,觀察輸出的信息,發現serialize()方法做的是將表單中的數據以htpp請求格式拼接成字元串。
serialize確實是能夠解決一般的提交數據。但是有時我們需要的是一個object對象,而不是字元串(比如jqgrid reload時設置查詢條件參數,就需要object對象)。
方法如下:
(function(window, $) { $.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; }; })(window, jQuery);
調用:
console.info($("#searchForm").serializeJson());