#3780 (ok 4.1.5) Allow aborting loading pages

ajax (6)

From https://sourceforge.net/u/benjamwelker/

It would be helpful and appreciated if an abort call were added to the ajax powered links. There have been a few times where I clicked the wrong link, and had to wait for the new page to fully load and become active before I could click the correct link. With normal HTML links, if you click an incorrect link, and then quickly click the correct link before the page refreshes, it will load the new page instead. The way it is now, the user has to wait until the new page is fully loaded and the links become active before the new, correct link can be clicked. This fix can be achieved by running the .abort( ); method on any currently running ajax requests before generating the new request.


Bugs: #3728


  • Rouslan Placella

    Here's the issue in the code: https://github.com/phpmyadmin/phpmyadmin/blob/c2b5f977bc62525d1ac1e2e2b236bf9d2149ec36/js/ajax.js#L145

    As a side note, the request can only be interrupted during the fetching of the page from the server. If the AJAX handler has moved on to loading/firing scripts, as far as I can see, the request must not be interrupted.

    • Benjam

      Benjam - 2013-01-23

      That is true, but most times, I realize I've clicked the wrong link very soon after clicking it, and usually (on my server at least) click the new link before anything changes.

      But you are correct, if the script has moved past the AJAX call, it's no longer abortable.

  • Marc Delisle

    Marc Delisle - 2013-04-11

    If I understand correctly, this can be closed.

  • Marc Delisle

    Marc Delisle - 2013-04-11
    • status: open --> closed-rejected
  • Rouslan Placella

    • status: closed-rejected --> open
  • Atul Pratap Singh

    • assigned_to: Atul Pratap Singh
  • Madhura Jayaratne

    • summary: Allow aborting loading pages --> (ok 4.1.5) Allow aborting loading pages
    • status: open --> resolved
    • Priority: 5 --> 1
  • Marc Delisle

    Marc Delisle - 2014-01-17
    • status: resolved --> fixed