我有一個循環(多個郵件調用)內的jQuery POST函數。
出於某種原因,jQuery正在發佈,但沒有返回所有數據,直到循環結束並一次解析所有結果。jQuery AJAX結果塊不會立即觸發
FOREACH arg_value IN args
{
console.log('Do stuff');
$.post('https://blah.com/xml.php',
{arg: arg_value},
function(xml) {
$(xml).find('tag').each(function() {
console.log('Do more stuff');
});
});
}
的這個輸出是...
做的東西
做的東西
做的東西
不要更多的東西
做更多的東西
做更多的東西
看起來好像jQuery是cac直到最後纔會執行結果。
我期待......
做的東西
不要更多的東西
做的東西
做更多的東西
做的東西
做更多的東西
有一個選項告訴jQuery暫停執行,直到有AJAX結果?它似乎像往常一樣異步運行,但在這種情況下我不希望這樣。
我不認爲任何東西都被緩存在這裏。 AJAX是一個異步調用,只有當調用完成併發回結果時纔會發生更多的事情。雖然你的每個是同步的並執行lineraly(在一個循環中) – ryadavilli
將不會以這種方式運行...在AJAXsuccess返回時,這裏其他代碼得到執行..它異步調用.. – thecodejack
這表現如預期。如果你想讓你的ajax calles以連續的方式觸發,請查看延遲來排序它們。 – Halcyon