Closed Bug 715446 Opened 13 years ago Closed 13 years ago

Setting location.href aborts AJAX requests even if not resulting in a page change

Categories

(Firefox :: Untriaged, defect)

8 Branch
x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 564744

People

(Reporter: augustus.kling, Unassigned)

Details

User Agent: Mozilla/5.0 (Ubuntu; X11; Linux x86_64; rv:8.0) Gecko/20100101 Firefox/8.0 Build ID: 20111115183813 Steps to reproduce: An AJAX request was sent on a page and whilst the AJAX request was running, window.location.href was set. The reason to set window.location.href was to trigger a file download to allow the user to save the file to disk (the file type does not matter but it should be something Firefox can't display itself). This report does not apply when window.location.href is pointed to a file that Firefox can natively display. In that case it is valid to abort all running AJAX request since their page will no longer be visible. Workaround: Instead of using window.location.href an iframe can be pointed to the file download. I suppose this gives another document/context and does therefore not abort the running AJAX request. Actual results: The AJAX request was aborted and the Save-File-As popup is shown. After saving the file to disk the user stays on the originally displayed page. The AJAX request failed silently and is still displayed as running in Firebug. The same behaviour occurs when Firebug is disabled. Expected results: The Save-File-As popup is shown and allows the user to save the file to disk or to open it using an external program. The AJAX request should keep running in the background and finish successfully. JavaScript handlers that are bound to the AJAX request should be executed on completion of the AJAX request (regardless of if the user already closed the Save-File-As dialog).
Status: UNCONFIRMED → RESOLVED
Closed: 13 years ago
Resolution: --- → DUPLICATE
Thanks for taking time to report this! This was already reported though.
You need to log in before you can comment on or make changes to this bug.