]> source.dussan.org Git - jquery.git/commitdiff
Backing out fix for #6481.
authorJohn Resig <jeresig@gmail.com>
Sat, 16 Apr 2011 16:12:53 +0000 (09:12 -0700)
committerJohn Resig <jeresig@gmail.com>
Sat, 16 Apr 2011 16:12:53 +0000 (09:12 -0700)
src/ajax.js
test/unit/ajax.js

index 3048068d04a80f88fb26b02814b139cfcfbfd0a7..2a10763917443e57d5066bbfda7231a4dee7fd0f 100644 (file)
@@ -772,7 +772,7 @@ jQuery.extend({
 });
 
 function buildParams( prefix, obj, traditional, add ) {
-       if ( jQuery.isArray( obj ) && obj.length ) {
+       if ( jQuery.isArray( obj ) ) {
                // Serialize array item.
                jQuery.each( obj, function( i, v ) {
                        if ( traditional || rbracket.test( prefix ) ) {
@@ -792,16 +792,9 @@ function buildParams( prefix, obj, traditional, add ) {
                });
 
        } else if ( !traditional && obj != null && typeof obj === "object" ) {
-               // If we see an array here, it is empty and should be treated as an empty
-               // object
-               if ( jQuery.isArray( obj ) || jQuery.isEmptyObject( obj ) ) {
-                       add( prefix, "" );
-
                // Serialize object item.
-               } else {
-                       for ( var name in obj ) {
-                               buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
-                       }
+               for ( var name in obj ) {
+                       buildParams( prefix + "[" + name + "]", obj[ name ], traditional, add );
                }
 
        } else {
index ac1dc73b1529617a46f7f810e08c05dd41f5afa9..a8a5fa0d7dd994d7f3273aee828239e71694fe2c 100644 (file)
@@ -946,7 +946,7 @@ test("serialize()", function() {
 });
 
 test("jQuery.param()", function() {
-       expect(24);
+       expect(21);
 
        equals( !jQuery.ajaxSettings.traditional, true, "traditional flag, falsy by default" );
 
@@ -976,11 +976,6 @@ test("jQuery.param()", function() {
 
        equals( decodeURIComponent( jQuery.param({ a: [1,2,3], "b[]": [4,5,6], "c[d]": [7,8,9], e: { f: [10], g: [11,12], h: 13 } }) ), "a[]=1&a[]=2&a[]=3&b[]=4&b[]=5&b[]=6&c[d][]=7&c[d][]=8&c[d][]=9&e[f][]=10&e[g][]=11&e[g][]=12&e[h]=13", "Make sure params are not double-encoded." );
 
-       // Make sure empty arrays and objects are handled #6481
-       equals( jQuery.param({"foo": {"bar": []} }), "foo%5Bbar%5D=", "Empty array param" );
-       equals( jQuery.param({"foo": {"bar": [], foo: 1} }), "foo%5Bbar%5D=&foo%5Bfoo%5D=1", "Empty array param" );
-       equals( jQuery.param({"foo": {"bar": {}} }), "foo%5Bbar%5D=", "Empty object param" );
-
        // #7945
        equals( jQuery.param({"jquery": "1.4.2"}), "jquery=1.4.2", "Check that object with a jQuery property get serialized correctly" );
 
@@ -2259,4 +2254,4 @@ test("jQuery.ajax - active counter", function() {
 
 }
 
-//}
\ No newline at end of file
+//}