<com:TContent ID="body" > <h1 id="184032">TCallbackClientSide</h1> <com:DocLink ClassPath="System.Web.UI.ActiveControls.TCallbackClientSide" /> <p class="block-content"> <tt>TCallbackClientSide</tt> is used to specify client-side callback request options and client-side event handlers. Each active control that inherits from <tt>TActiveBaseCallbackControl</tt> has a ClientSide property. The ClientSide property is an instance <tt>TCallbackClientSide</tt> 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. </p> <com:TTextHighlighter Language="prado" CssClass="source block-content"> <com:TClientScript PradoScripts="effects" /> <span id="callback_status">Loading...</span> <com:TActiveButton Text="Click Me" OnCallback="button_callback" ActiveControl.CallbackParameter="value" > <prop:ClientSide OnLoading="Element.show('callback_status')" OnComplete="Element.hide('callback_status')" /> </com:TActiveButton> </com:TTextHighlighter> <h3 id="184033">Events</h3> <p class="block-content"> The following client side events are executing in order if the callback request and response are send and received successfuly. </p> <ul> <li><tt>onPreDispatch</tt>: executed before a request is dispatched;</li> <li><tt>onUninitialized</tt>: executed when callback request is uninitialized;</li> <li><tt>onLoading</tt>* : executed when callback request is initiated;</li> <li><tt>onLoaded</tt>* : executed when callback request begins;</li> <li><tt>onInteractive</tt>: executed when callback request is in progress;</li> <li><tt>onComplete</tt>: executed when callback response returns;</li> <li><tt>onSuccess</tt> executed when callback request returns and is successful;</li> <li><tt>onFailure</tt> executed when callback request fails (only for communication errors);</li> <li><tt>onException</tt> raised when callback request fails due to request/response errors.</li> </ul> <p class="block-content"> * Note that theses 2 events are not fired correctly by Opera. To make them work in this browser, Prado will fire them just after <tt>onPreDispatch</tt>. </p> <p class="block-content"> 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. <br/>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. </p> <h3 id="184034">Properties</h3> <p class="block-content"> The following properties can be used to change the way the callback request is performed. </p> <ul> <li><tt>PostState</tt>: true to collect the form inputs and post them during callback (default: true);</li> <li><tt>RequestTimeOut</tt> The request timeout in milliseconds (default: 30000, i.e. 30 seconds);</li> <li><tt>HasPriority</tt> true to ensure that the callback request will be sent immediately and will abort existing prioritized requests. It does not affect callbacks that are not prioritized (default: true);</li> <li><tt>EnablePageStateUpdate</tt> enable the callback response to enable the viewstate update. This will automatically set HasPriority to true when enabled. (default: true).</li> </ul> <com:RunBar PagePath="ActiveControls.Samples.TCallbackClientSide.Home" /> </com:TContent>