JavaScript & jQuery Tutorials

JQ Home Right Arrow Objects Right Arrow deferred.always()

deferred.always()

alwaysCallbacks additions.

Description

The deferred.always() Deferred method, adds handlers to be called when the Deferred object is resolved or rejected.

  • When the Deferred is resolved or rejected, callbacks are executed in the order they were added.

Syntax


Signature Description
deferred.always( alwaysCallbacks )Add handlers to be called when the Deferred object is resolved or rejected.

Parameters


Parameter Description Type
alwaysCallbacksA function(s), or array(s) of functions, that are called when the Deferred is resolved or rejected.Function

Return

A Deferred object.

deferred.always( alwaysCallbacks ) Example go to Objects Objects   go to top of page Top

Add handlers to be called when the Deferred object is resolved or rejected.

In the example below when we press the left button the first time we create a Deferred object and use some deferred object methods on it. We then resolve the Deferred object and hence deferred.always( alwaysCallbacks ) gets called with the message passed from the resolve.

When we press the right button the first time, we create a Deferred object and use some deferred object methods on it. We then reject the Deferred object and hence deferred.always( alwaysCallbacks ) gets called with the message passed from the reject.


$(function(){
  $('#btn1').one('click', function(){
    var ourDeferred = $.Deferred();
    ourDeferred.always( aFunc );
    ourDeferred.progress( [aFunc, bFunc] );
    ourDeferred.notify( 'The aFunc function was fired from our deferred. <br />', '#div1');
    ourDeferred.resolve( 'Our deferred was resolved. <br />', '#div1' );
  });
  $('#btn4').one('click', function(){
    var ourDeferred = $.Deferred();
    ourDeferred.always( aFunc );
    ourDeferred.progress( aFunc );
    ourDeferred.notify( 'The aFunc function was fired from our deferred. <br />', '#div1' );
    ourDeferred.reject( 'Our deferred was rejected. <br />', '#div1' );
  });

  function aFunc( value, div ){
    $(div).append( value);
  }
  function bFunc( value, div ){
    aFunc('Passing bFunc function value to aFunc. <br />', div);
  }
});

div1. Some initial text.

Press the button below to action the above code:

                

Related Tutorials

jQuery Advanced Tutorials - Lesson 7 - The Deferred Object



 

go to jQuery home page jQ Home go to Objects Objects go to top of page Top