X-Git-Url: http://git.asbjorn.biz/?a=blobdiff_plain;f=src%2Fajax.js;h=94e022832f32d99618266266ea07901866c03ba2;hb=b32ec31d896eb163c5f3d9b54ca9da3c0dd90ce0;hp=6628b1f3977ab8ad963c7b526318434ed861f6b6;hpb=feb9051c0e29937c2494c3db0862a671efc21747;p=jquery.git diff --git a/src/ajax.js b/src/ajax.js index 6628b1f..94e0228 100644 --- a/src/ajax.js +++ b/src/ajax.js @@ -151,7 +151,7 @@ jQuery.extend({ lastModified: {}, ajax: function( s ) { - var jsonp, jsre = /=(\?|%3F)/g, status, data; + var jsonp, jsre = /=\?(&|$)/g, status, data; // Extend the settings, but re-extend 's' so that it can be // checked again later (in the test suite, specifically) @@ -177,8 +177,8 @@ jQuery.extend({ // Replace the =? sequence both in the query string and the data if ( s.data ) - s.data = (s.data + "").replace(jsre, "=" + jsonp); - s.url = s.url.replace(jsre, "=" + jsonp); + s.data = (s.data + "").replace(jsre, "=" + jsonp + "$1"); + s.url = s.url.replace(jsre, "=" + jsonp + "$1"); // We need to make sure // that a JSONP style response is executed properly @@ -192,6 +192,8 @@ jQuery.extend({ // Garbage collect window[ jsonp ] = undefined; try{ delete window[ jsonp ]; } catch(e){} + if ( head ) + head.removeChild( script ); }; }