X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;ds=sidebyside;f=src%2Fajax.js;h=a0bcf55f7696ad8bc3aca923770df877e5e6f2a0;hb=d9a3b133f1bf6a283349b5c0ab64b7c09cb9b92b;hp=ef9504887dce9ae7781d41074575d4d93a87b6f9;hpb=4e504d86b9dc9e1501f598744f6c3b19f834c487;p=jquery.git diff --git a/src/ajax.js b/src/ajax.js index ef95048..a0bcf55 100644 --- a/src/ajax.js +++ b/src/ajax.js @@ -64,7 +64,7 @@ jQuery.fn.extend({ serialize: function() { return jQuery.param(this.serializeArray()); }, - serializeArray: function() { + serializeArray: function() { return this.map(function(){ return jQuery.nodeName(this, "form") ? jQuery.makeArray(this.elements) : this; @@ -74,13 +74,16 @@ jQuery.fn.extend({ (this.checked || /select|textarea/i.test(this.nodeName) || /text|hidden|password/i.test(this.type)); }) - .map(function(i, elem){ var val = jQuery(this).val(); + .map(function(i, elem){ + var val = jQuery(this).val(); return val == null ? null : val.constructor == Array ? - jQuery.map( val, function(i, val){ return {name: elem.name, value: val}; + jQuery.map( val, function(val, i){ + return {name: elem.name, value: val}; }) : - {name: elem.name, value: val}; - }).get(); } + {name: elem.name, value: val}; + }).get(); + } }); // Attach a bunch of functions for handling common AJAX events @@ -187,6 +190,7 @@ jQuery.extend({ window[ jsonp ] = function(tmp){ data = tmp; success(); + complete(); // Garbage collect window[ jsonp ] = undefined; try{ delete window[ jsonp ]; } catch(e){}