Re-adds hastily removed variable and simplifies statusCode based callbacks handling.
This commit is contained in:
parent
7947cd77e4
commit
3ea366401f
31
src/ajax.js
31
src/ajax.js
|
@ -368,7 +368,12 @@ jQuery.extend({
|
||||||
// Stored success
|
// Stored success
|
||||||
success,
|
success,
|
||||||
// Stored error
|
// Stored error
|
||||||
error;
|
error,
|
||||||
|
|
||||||
|
// Keep track of statusCode callbacks
|
||||||
|
oldStatusCode = statusCode;
|
||||||
|
|
||||||
|
statusCode = undefined;
|
||||||
|
|
||||||
// If successful, handle type chaining
|
// If successful, handle type chaining
|
||||||
if ( status >= 200 && status < 300 || status === 304 ) {
|
if ( status >= 200 && status < 300 || status === 304 ) {
|
||||||
|
@ -410,6 +415,8 @@ jQuery.extend({
|
||||||
current,
|
current,
|
||||||
// Previous dataType
|
// Previous dataType
|
||||||
prev,
|
prev,
|
||||||
|
// Conversion expression
|
||||||
|
conversion,
|
||||||
// Conversion function
|
// Conversion function
|
||||||
conv,
|
conv,
|
||||||
// Conversion functions (when text is used in-between)
|
// Conversion functions (when text is used in-between)
|
||||||
|
@ -448,8 +455,8 @@ jQuery.extend({
|
||||||
if ( prev !== "*" && current !== "*" && prev !== current ) {
|
if ( prev !== "*" && current !== "*" && prev !== current ) {
|
||||||
|
|
||||||
// Get the converter
|
// Get the converter
|
||||||
conv = converters[ prev + " " + current ] ||
|
conversion = prev + " " + current;
|
||||||
converters[ "* " + current ];
|
conv = converters[ conversion ] || converters[ "* " + current ];
|
||||||
|
|
||||||
conv1 = conv2 = 0;
|
conv1 = conv2 = 0;
|
||||||
|
|
||||||
|
@ -524,7 +531,7 @@ jQuery.extend({
|
||||||
}
|
}
|
||||||
|
|
||||||
// Status-dependent callbacks
|
// Status-dependent callbacks
|
||||||
jXHR.statusCode( statusCode );
|
jXHR.statusCode( oldStatusCode );
|
||||||
|
|
||||||
if ( s.global ) {
|
if ( s.global ) {
|
||||||
globalEventContext.trigger( "ajax" + ( isSuccess ? "Success" : "Error" ) ,
|
globalEventContext.trigger( "ajax" + ( isSuccess ? "Success" : "Error" ) ,
|
||||||
|
@ -552,20 +559,14 @@ jQuery.extend({
|
||||||
// Status-dependent callbacks
|
// Status-dependent callbacks
|
||||||
jXHR.statusCode = function( map ) {
|
jXHR.statusCode = function( map ) {
|
||||||
if ( map ) {
|
if ( map ) {
|
||||||
var resolved = jXHR.isResolved(),
|
var tmp;
|
||||||
tmp;
|
if ( statusCode ) {
|
||||||
if ( resolved || jXHR.isRejected() ) {
|
|
||||||
tmp = map[ jXHR.status ];
|
|
||||||
if ( tmp ) {
|
|
||||||
if ( map === statusCode ) {
|
|
||||||
delete statusCode[ jXHR.status ];
|
|
||||||
}
|
|
||||||
jXHR[ resolved ? "done" : "fail" ]( tmp );
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
for( tmp in map ) {
|
for( tmp in map ) {
|
||||||
statusCode[ tmp ] = [ statusCode[ tmp ] , map[ tmp ] ];
|
statusCode[ tmp ] = [ statusCode[ tmp ] , map[ tmp ] ];
|
||||||
}
|
}
|
||||||
|
} else {
|
||||||
|
tmp = map[ jXHR.status ];
|
||||||
|
jXHR.done( tmp ).fail( tmp );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return this;
|
return this;
|
||||||
|
|
Loading…
Reference in a new issue