J'ai une fonction récursive qui verrouille mon navigateur en cours d'exécution.Empêche la fonction récursive de verrouiller le navigateur
Lorsque cette fonction est en cours d'exécution, toutes mes commandes jquery sont verrouillées en attente de la fin de la fonction.
Que dois-je faire pour rendre cette fonction asynchrone?
Cette fonction fonctionne sur document.ready
function SearchTrip() {
$.post("/extensions/searchtrip", {
from: $("#from").val(),
to: $("#to").val(),
ddate: $("#ddate").val()
},
function (mReturn) {
if (mReturn.fTotalAmount != '0,00') {
var sAirline = '';
if (mReturn.Airline)
sAirline = ' pela ' + mReturn.Airline;
$("#buscandoPassagens").hide();
} else if (SearchTripAmount < 5) {
SearchTripAmount++;
setTimeout(function() {
SearchTrip();
}, 500);
} else {
$("#pNaoEncontrada").show();
}
},
"json");
}
Pourquoi êtes-vous mise à l'eau récursivement? – Kasyx
Utilisez setTimeout pour chaque appel récursif. –
'SearchTripAmount' est une variable globale? Êtes-vous sûr que ça augmente? – Blazemonger