TCallbackClientSide

API Manual

TCallbackClientSide is used to specify client-side callback request options and client-side event handlers. Each active control that inherits from TActiveBaseCallbackControl has a ClientSide property. The ClientSide property is an instance TCallbackClientSide containing the actual options and event handlers that are used by the client-side when that control is making a callback request. The following example demonstrates the toggling of a "loading" indicator when the client-side is making a callback request.

<com:TClientScript PradoScripts="effects" />
<span id="callback_status">Loading...</span>

<com:TActiveButton
	Text="Click Me"
	OnCallback="button_callback"
	ActiveControl.CallbackParameter="value" >
	<prop:ClientSide
		OnLoading="jQuery('#callback_status').show()"
		OnComplete="jQuery('#callback_status').hide()" />
</com:TActiveButton>

Events

The following client side events are executing in order if the callback request and response are send and received successfuly.

  • onPreDispatch: executed before a request is dispatched;
  • onUninitialized: executed when callback request is uninitialized;
  • onLoading* : executed when callback request is initiated;
  • onLoaded* : executed when callback request begins;
  • onInteractive: executed when callback request is in progress;
  • onComplete: executed when callback response returns;
  • onSuccess executed when callback request returns and is successful;
  • onFailure executed when callback request fails (only for communication errors);
  • onException raised when callback request fails due to request/response errors.

* Note that theses 2 events are not fired correctly by Opera. To make them work in this browser, Prado will fire them just after onPreDispatch.

In a general way, onUninitialized, onLoading, onLoaded and onInteractive events are not implemented consistently in all browsers. When cross browser compatibility is needed, it is best to avoid use them.
The OnSuccess and OnFailure events are raised when the response is returned. A successful request/response will raise OnSuccess event otherwise OnFailure will be raised.

Properties

The following properties can be used to change the way the callback request is performed.

  • PostState true to collect the form inputs and post them during callback (default: true);
  • RequestTimeOut The request timeout in milliseconds (default: 30000, i.e. 30 seconds);
  • RetryLimit The number of times the request is retried when it timeouts (default: 1)
  • EnablePageStateUpdate enable the callback response to enable the viewstate update. This will automatically set HasPriority to true when enabled. (default: true).