我有这样的控制:
<asp:Button ID="save_all_filt" runat="server" Text="All data for filtered subjects"
OnClientClick=" a= saveAllFilt(); return true; " onclick="save_all_filt_Click" />
saveAllFilt包含一个JQuery ajax调用。所以我在日志中看到的,我同时开始回发和saveAllFilt。然而,回发“延迟”并且在使用saveAllFilt fninshes中的Ajax调用之前什么都不做。
我想知道是否有办法这样做: 1. onClientClick,系统进入saveAllFilt JS函数并以某种方式等待(!)直到Ajax函数以这种或那种方式完成。 2.只有完成后才会发生真正的回发。
我确实认识到JQuery ajax调用是事件驱动和异步的。只是想阻止这些回发操作直到它完成(AJAX调用为通过服务器回发发生的检索准备数据。)
答案 0 :(得分:4)
将jQuery AJAX配置对象的async
property设置为false
:
$.ajax({
/* ... */
async : false
/* ... */
})