我有这样的控件:
<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。然而,回发会“延迟”,并且在 Ajax 调用 saveAllFilt 完成之前不执行任何操作。
我想知道是否有一种方法可以做到这一点: 1. onClientClick,系统进入 saveAllFilt JS 函数并以某种方式等待(!)直到 Ajax 函数以这种或那种方式完成。 2.只有当它完成时,真正的回发才开始发生。
我确实意识到 JQuery ajax 调用是事件驱动的和异步的。只是想阻止这些回发操作直到其完成(AJAX 调用准备通过服务器回发进行的检索数据。)
最佳答案
设置async
property将 jQuery AJAX 配置对象设置为 false
:
$.ajax({
/* ... */
async : false
/* ... */
})
关于javascript - ASP.NET:如何使 onClientClick 在回发之前完成工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13310883/