Why to re-invent the wheel? ----- Original Message ----- From: Hector Virgen To: jquery-en@googlegroups.com Sent: Wednesday, August 26, 2009 9:43 AM Subject: [jQuery] Re: How to cancel an AJAX request?
Thanks, Rupak, but I was hoping to be able to accomplish this without a plugin. What I'm thinking of doing is storing the XMLHttpRequest object as a local variable early on, like in the beforeSend callback. var xmlHttpRequest = null; $.ajax({ /* ... */ beforeSend: function(request) { xmlHttpRequest = request; } }); $.('button.canel').click(function(event) { if (null !== xmlHttpRequest) { xmlHttpRequest.abort(); xmlHttpRequest = null; } event.preventDefault(); }); I am not sure if this would cause any issues with the overall ajax lifecycle. For example, if the cancel button was clicked, would the "error" callback be executed? I'll have to test it and see. -- Hector On Tue, Aug 25, 2009 at 9:00 PM, rupak mandal <rupakn...@gmail.com> wrote: Hi Hector, you have to use abort function. go through this link http://www.protofunc.com/scripts/jquery/ajaxManager/ Thanks Rupak On Wed, Aug 26, 2009 at 2:25 AM, Hector Virgen <djvir...@gmail.com> wrote: Hello, Is there a way to stop or cancel an ajax request on demand, similar to pressing "stop" in the browser? I would like to provide the user with a cancel button on a "loading" dialog that, when clicked, closes the dialog and cancels the ajax request. I have the dialog working (thanks to jQuery-UI) but pressing cancel only closes the it. I do not want simply ignore the response because I have a "success" callback that does some heavy manipulation of the response HTML that I'd like to prevent from running when the user cancels. Any help would be appreciated. Thanks! -- Hector