Witam Mam 2 wywołania ajax w moim skrypcie, potrzebuję ich uruchomić asnyc do wolnego czasu, ale potrzebuję sekundy, aby poczekać, aż pierwszy jest skończony.jQuery Poczekaj, aż asynchroniczne wywołania ajax zostaną zakończone
$.ajax({
type: "POST",
url: "getText.asmx/ws_getText",
data: parO1,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
alert(msg.d.data);
}
, error: function() {
chyba("chyba v požadavku", "df");
}
});
if (parO2.length > 0) {
$.ajax({
type: "POST",
url: "getText.asmx/ws_getText",
data: parO2,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function (msg) {
/*WAIT UNTIL THE FIRST CALL IS FINISHED AND THAN DO SOMETHING*/
}
, error: function() {
chyba("chyba v požadavku", "df");
}
});
Jakieś pomysły? Dzięki
ale uczyni to czas realizacji dłużej, ponieważ uruchomiona zostanie druga rozmowa po pierwsze był gotowy, myślałem o czymś takim: w pierwszym sukcesem rozmowy mogę ustawić jakąś zmienną na true, aw Drugi nazywa to sukcesem, który mogę zrobić while (variable == false) {wait} i kontynuuj, ale nie wiem jak to poprawnie napisać – user1352324
Jedynym sposobem na zrobienie 'wait' będzie "setTimeout", a następnie sprawdzenie zmiennej globalnej. Ale technicznie oznacza to, że Twój limit czasu może nastąpić po zakończeniu połączenia, ale wciąż czeka. Lepiej byłoby po prostu pokazać użytkownikowi obracający się gif lub coś, co wskazywałoby, że serwer działa. – Tejs