Make sure that #... are trimmed from Ajax request URLs. Fixes #4987.
This commit is contained in:
parent
a32f4d7b6c
commit
f9f9ee52e1
|
@ -10,6 +10,7 @@ var jsc = jQuery.now(),
|
||||||
rts = /([?&])_=[^&]*(&?)/,
|
rts = /([?&])_=[^&]*(&?)/,
|
||||||
rurl = /^(\w+:)?\/\/([^\/?#]+)/,
|
rurl = /^(\w+:)?\/\/([^\/?#]+)/,
|
||||||
r20 = /%20/g,
|
r20 = /%20/g,
|
||||||
|
rhash = /#[^#]*$/,
|
||||||
|
|
||||||
// Keep a copy of the old load method
|
// Keep a copy of the old load method
|
||||||
_load = jQuery.fn.load;
|
_load = jQuery.fn.load;
|
||||||
|
@ -205,6 +206,7 @@ jQuery.extend({
|
||||||
var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings),
|
var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings),
|
||||||
jsonp, status, data, type = s.type.toUpperCase();
|
jsonp, status, data, type = s.type.toUpperCase();
|
||||||
|
|
||||||
|
s.url = s.url.replace( rhash, "" );
|
||||||
s.context = origSettings && origSettings.context || s;
|
s.context = origSettings && origSettings.context || s;
|
||||||
|
|
||||||
// convert data if not already a string
|
// convert data if not already a string
|
||||||
|
|
|
@ -68,6 +68,35 @@ test("jQuery.ajax() - error callbacks", function() {
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
test(".ajax() - hash", function() {
|
||||||
|
expect(3);
|
||||||
|
|
||||||
|
jQuery.ajax({
|
||||||
|
url: "data/name.html#foo",
|
||||||
|
beforeSend: function( xhr, settings ) {
|
||||||
|
equals(settings.url, "data/name.html", "Make sure that the URL is trimmed.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
jQuery.ajax({
|
||||||
|
url: "data/name.html?abc#foo",
|
||||||
|
beforeSend: function( xhr, settings ) {
|
||||||
|
equals(settings.url, "data/name.html?abc", "Make sure that the URL is trimmed.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
jQuery.ajax({
|
||||||
|
url: "data/name.html?abc#foo",
|
||||||
|
data: { "test": 123 },
|
||||||
|
beforeSend: function( xhr, settings ) {
|
||||||
|
equals(settings.url, "data/name.html?abc&test=123", "Make sure that the URL is trimmed.");
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
});
|
||||||
|
});
|
||||||
|
|
||||||
test(".ajax() - 304", function() {
|
test(".ajax() - 304", function() {
|
||||||
expect( 1 );
|
expect( 1 );
|
||||||
stop();
|
stop();
|
||||||
|
|
Loading…
Reference in a new issue