X-Git-Url: http://git.asbjorn.it/?a=blobdiff_plain;f=src%2Fajax%2Fajax.js;h=ccf4f14a95f89048b842a048b5b5984a8433e95b;hb=0477a6e99e95ae93da983e7fc2a30bf16ea8ca77;hp=aa6275410afc25647a259770bb630b1eb085574e;hpb=257eaf7ee32df66ddd0a3333a5b6a829b9d388ef;p=jquery.git diff --git a/src/ajax/ajax.js b/src/ajax/ajax.js index aa62754..ccf4f14 100644 --- a/src/ajax/ajax.js +++ b/src/ajax/ajax.js @@ -48,6 +48,12 @@ jQuery.fn.extend({ if ( jQuery.isFunction( url ) ) return this.bind("load", url); + var off = url.indexOf(" "); + if ( off >= 0 ) { + var selector = url.slice(off, url.length); + url = url.slice(0, off); + } + callback = callback || function(){}; // Default to a GET request @@ -78,7 +84,19 @@ jQuery.fn.extend({ complete: function(res, status){ // If successful, inject the HTML into all the matched elements if ( status == "success" || !ifModified && status == "notmodified" ) - self.html(res.responseText); + // See if a selector was specified + self.html( selector ? + // Create a dummy div to hold the results + jQuery("
") + // inject the contents of the document in, removing the scripts + // to avoid any 'Permission Denied' errors in IE + .append(res.responseText.replace(//g, "")) + + // Locate the specified elements + .find(selector) : + + // If not, just inject the full result + res.responseText ); // Add delay to account for Safari's delay in globalEval setTimeout(function(){