ASP.NET:如何在回发之前使onClientClick完成工作?

时间:2012-11-09 15:27:19

标签: javascript asp.net ajax onclick onclientclick

我有这样的控制:

<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调用为通过服务器回发发生的检索准备数据。)

1 个答案:

答案 0 :(得分:4)

将jQuery AJAX配置对象的async property设置为false

$.ajax({
    /* ... */
    async : false
    /* ... */
})