я написал мой первый $ .when рутина, но не работает, как ожидалось:
$(document).ready(function()
{
var UserUrl = 'API/StartGetUser.asp';
var StoreUrl = 'API/StartGetStore.asp';
var FeedbackUrl='API/StartGetFeed.asp';
var ItemsUrl='API/StartGetSellers.asp';
$.when(
$.get(UserDetailsUrl),
$.get(StoreCategoryUrl),
$.get(FeedbackUrl),
$.get(ItemsUrl)
).then(function(user,store,feed,items) {
//$.get(mailUrl)
alert(user+' '+store+' '+feed+' '+items);
}).fail(function(err) {
alert(err);
});
Это работает, но я ожидал, что 4 прибудете бы выпустили одновременно, в то время как Я обнаружил, что выполнены один после того, как предыдущий закончил ... с тех пор является
$ .get
это, конечно, асинхронная ..
что может быть неправильным? Что я должен проверить?
btw, serverside является классическим asp, и запрос находится на той же машине, что и на url.
спасибо за любые подсказки
Джо
Я думаю, вы хотите сказать, что это синхронно, асинхронно, но на самом деле это не имеет смысла. Откуда вы знаете, что они не отправляются немедленно? – charlietfl
'$ .get()' не является синхронным, пока вы не выполнили 'ajaxSetup ({async: false})' –
да, я имею в виду, что он работает синхронно, но $ .get работает только async .. поэтому он не является проблема настроек .. Я вижу, что не обрабатываются одновременно, так как эффекты задерживаются – Joe