You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@tapestry.apache.org by Norbert Sándor <de...@erinors.com> on 2007/01/31 20:11:28 UTC

synchronous ajax

Hello,

In 4.1.1 is it possible to display an hourglass and disallow further 
user interface interaction during ajax requests?

Thanks in advance:
Norbi

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org


Re: synchronous ajax

Posted by Matt Brock <br...@gmail.com>.

Norbert Sándor wrote:
> 
> In 4.1.1 is it possible to display an hourglass and disallow further 
> user interface interaction during ajax requests?
> 

I'm using the pre-Dojo-fied Tap 4 and implemented my own Ajax handler
routines, so I don't know if there's a built-in Dojo hand-holding way to do
this, but it's certainly possible in Tap 4.  I'd imagine it's possible in
4.1 as well.

In a nutshell, I created a global Ajax request object that all XMLHttp
requests register with and then pass through.  In the situation you
described, you merely loop through your request objects and see if any have
a readyState that does not equal 0 or 4 (which means it's still busy with a
request).  Each request object has a new parameter I added called
"isInterruptable" to allow certain asynchronous requests to be overridden.

To disable user interaction, you simply create a fixed DIV that's the size
of the screen with a z-index greater than anything else on the page.  It
basically acts like a piece of glass over all the links/submit buttons/etc. 
They think they're clicking on a link, but are in fact clicking on this
transparent DIV.  Change the mouse pointer by using obj.style.cursor =
"wait";
-- 
View this message in context: http://www.nabble.com/synchronous-ajax-tf3150705.html#a8749537
Sent from the Tapestry - User mailing list archive at Nabble.com.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@tapestry.apache.org
For additional commands, e-mail: users-help@tapestry.apache.org