jQuery jqXHR - cancel chained calls, trigger error chain

Posted by m0sa on Stack Overflow See other posts from Stack Overflow or by m0sa
Published on 2011-02-24T23:07:57Z Indexed on 2011/02/24 23:25 UTC
Read the original article Hit count: 195

Filed under:
|
|

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.

  1. The serverside method always returns a JSON object:

    { success: true|false, data: ... }

  2. The client-side utility initiates the ajax call like this

    var jqxhr = $.ajax({ ... });

  3. 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.

© Stack Overflow or respective owner

Related posts about jquery-ajax

Related posts about jquery1.5