jQuery jqXHR - cancel chained calls, trigger error chain
- by m0sa
I am creating a ajax utility for interfacing with my server methods. I would like to leverage jQuery 1.5+ deferred methods from the object returned from the jQuery.ajax() call. The situation is following.
The serverside method always returns a JSON object:
{ success: true|false, data: ... }
The client-side utility initiates the ajax call like this
var jqxhr = $.ajax({ ... });
And the problem area:
jqxhr.success(function(data, textStatus, xhr) {
if(!data || !data.success) {
???? // abort processing, trigger error
}
});
return jqxhr; // return to caller so he can attach his own handlers
So the question is how to cancel invocation of all the callers appended success callbacks an trigger his error handler in the place mentioned with ???? ?
The documentation says the deferred function invocation lists are FIFO, so my success handler is definitely the first one.