git.asbjorn.biz
/
jquery.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
0c21c83
)
Fixes a bug that prevented headers from being set in an ajaxSend callback. Unit test...
author
jaubourg
<j@ubourg.net>
Mon, 7 Feb 2011 15:35:32 +0000
(16:35 +0100)
committer
jaubourg
<j@ubourg.net>
Mon, 7 Feb 2011 15:35:32 +0000
(16:35 +0100)
src/ajax.js
patch
|
blob
|
history
test/unit/ajax.js
patch
|
blob
|
history
diff --git
a/src/ajax.js
b/src/ajax.js
index
4830e3d
..
2b6b80f
100644
(file)
--- a/
src/ajax.js
+++ b/
src/ajax.js
@@
-684,8
+684,7
@@
jQuery.extend({
if ( !transport ) {
done( -1, "No Transport" );
} else {
if ( !transport ) {
done( -1, "No Transport" );
} else {
- // Set state as sending
- state = jqXHR.readyState = 1;
+ jqXHR.readyState = 1;
// Send global event
if ( fireGlobals ) {
globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
// Send global event
if ( fireGlobals ) {
globalEventContext.trigger( "ajaxSend", [ jqXHR, s ] );
@@
-698,6
+697,7
@@
jQuery.extend({
}
try {
}
try {
+ state = 1;
transport.send( requestHeaders, done );
} catch (e) {
// Propagate exception as error if not done
transport.send( requestHeaders, done );
} catch (e) {
// Propagate exception as error if not done
diff --git
a/test/unit/ajax.js
b/test/unit/ajax.js
index
cf7c0ad
..
59159c3
100644
(file)
--- a/
test/unit/ajax.js
+++ b/
test/unit/ajax.js
@@
-348,10
+348,14
@@
test(".ajax() - headers" , function() {
stop();
stop();
+ jQuery('#foo').ajaxSend(function( evt, xhr ) {
+ xhr.setRequestHeader( "ajax-send", "test" );
+ });
+
var requestHeaders = {
var requestHeaders = {
- siMPle: "value",
- "SometHing-elsE": "other value",
- OthEr: "something else"
+ siMPle: "value",
+ "SometHing-elsE": "other value",
+ OthEr: "something else"
},
list = [],
i;
},
list = [],
i;
@@
-359,22
+363,25
@@
test(".ajax() - headers" , function() {
for( i in requestHeaders ) {
list.push( i );
}
for( i in requestHeaders ) {
list.push( i );
}
+ list.push( "ajax-send" );
jQuery.ajax(url("data/headers.php?keys="+list.join( "_" ) ), {
jQuery.ajax(url("data/headers.php?keys="+list.join( "_" ) ), {
+
headers: requestHeaders,
success: function( data , _ , xhr ) {
var tmp = [];
for ( i in requestHeaders ) {
tmp.push( i , ": " , requestHeaders[ i ] , "\n" );
}
headers: requestHeaders,
success: function( data , _ , xhr ) {
var tmp = [];
for ( i in requestHeaders ) {
tmp.push( i , ": " , requestHeaders[ i ] , "\n" );
}
+ tmp.push( "ajax-send: test\n" );
tmp = tmp.join( "" );
equals( data , tmp , "Headers were sent" );
equals( xhr.getResponseHeader( "Sample-Header" ) , "Hello World" , "Sample header received" );
tmp = tmp.join( "" );
equals( data , tmp , "Headers were sent" );
equals( xhr.getResponseHeader( "Sample-Header" ) , "Hello World" , "Sample header received" );
- start();
},
error: function(){ ok(false, "error"); }
},
error: function(){ ok(false, "error"); }
- });
+
+ }).then( start, start );
});
});