Commit 1a14a38f authored by John Resig's avatar John Resig

Make sure original context is maintained and not the deep extended one. Fixes #5924.

parent f91b944c
...@@ -206,7 +206,7 @@ jQuery.extend({ ...@@ -206,7 +206,7 @@ jQuery.extend({
var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings); var s = jQuery.extend(true, {}, jQuery.ajaxSettings, origSettings);
var jsonp, status, data, var jsonp, status, data,
callbackContext = s.context || s, callbackContext = origSettings && origSettings.context || s,
type = s.type.toUpperCase(); type = s.type.toUpperCase();
// convert data if not already a string // convert data if not already a string
......
...@@ -180,6 +180,27 @@ test("Ajax events with context", function() { ...@@ -180,6 +180,27 @@ test("Ajax events with context", function() {
}); });
}); });
test("jQuery.ajax context modification", function() {
expect(1);
stop();
var obj = {}
jQuery.ajax({
url: url("data/name.html"),
context: obj,
beforeSend: function(){
this.test = "foo";
},
complete: function() {
start();
}
});
equals( obj.test, "foo", "Make sure the original object is maintained." );
});
test("jQuery.ajax() - disabled globals", function() { test("jQuery.ajax() - disabled globals", function() {
expect( 3 ); expect( 3 );
stop(); stop();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment