jQuery ajax Page Reload

Wykonujemy wiele żądań ajaxowych, aby „zapisać” dane w aplikacji internetowej, a następnie ponownie załadować stronę. Spotkaliśmy się z sytuacją, w której (ponieważ żądania są wykonywane asynchronicznie) strona jest ładowana ponownie podczas lub przed zakończeniem wywołań ajax. Prostym rozwiązaniem było wywołanie ajax z „async”: opcja false, wymuszanie synchronicznych wywołań. Wydaje się, że to działa, jednak kod okna dialogowego, który działa przed wykonaniem jakichkolwiek wywołań, opóźnia działanie.

Wszelkie porady są bardzo mile widziane!

Należy również zauważyć, że umieszczenie alertu () przed przeładowaniem ZEZWALA na wykonanie żądań ajax. (Alert najwyraźniej opóźnia przeładowanie na tyle długo, aby żądania mogły pomyślnie przejść)

AKTUALIZACJA z próbkami kodu:

$(".submit_button").click(function(){ 
    popupMessage();
    sendData(); //the ajax calls are all in here
    location.reload();
});


function sendData() {
    //a bunch of these:
    $.ajax({
    "dataType": "text",
    "type": "POST",
    "data": data,
    "url": url,
    "success": function (msg) {}
    }).done(function( msg ) {

    }); 
}

questionAnswers(3)

yourAnswerToTheQuestion