jQuery http://api.jquery.com/jQuery.when/'dan ertelenmiş deseni kullanarak, birden çok jsonp ajax araması yapmaya çalışıyorum ve bir sonraki adıma geçmeden önce sonuçları bekleyin. Bunu sabit bir miktarda arama yaparak yapabilirim çünkü çözülmüş argüman parametrelerinin sayısını ".done()" ertelenmiş nesnesine ayarlayabilirim. Ama benim uygulamada çalışmıyor çünkü arama sayısı dinamik ve her zaman bilinmemektedir.Dinamik çoklu Ertelenmiş jQuery Ajax çağrıları
İlk basitleştirilmiş örnek, .done() çözümlenen işlevindeki hata sayısını ayarlayabildiğim için çalışır.
var urls = GetUrlList(); // returns array of urls to json service
var requests = []; // hold ajax request
for (i = 0; i < urls.length; i++) {
requests.push($.ajax(url[i]));
}
$.when.apply($, requests).done(function ("what goes here?") {
// Need to get the data returned from all ajax calls here
});
Teşekkür herhangi bir yardım için tarih:
$.when($.ajax(url1), $.ajax(url2)).done(function(a1, a2) {
var data = a1[ 0 ] + a2[ 0 ];
});
bu eksikti ama işe alınamıyor ne: Ben .her iki aramalar() vardır çünkü iki gerekiyor biliyorum bu!
Teşekkür geçti bütün argümanları tutan özel bir kraldır arguments, kullanabilirsiniz! –
Bu, gönderilecek en az iki isteğiniz olduğunda iyi çalışır. Aksi halde, bir sorgu ya da birkaç olduğunda tutarsız bir davranış elde edersiniz :( – Happynoff
argümanların bağlantısı güncel değil ve kullanımdan kaldırılmış bir özelliğe işaret eder. [Güncelleştirilmiş bağlantı budur] (https://developer.mozilla.org/en- US/docs/Web/JavaScript/Reference/Functions/arguments) – Liam