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

标签 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。然而,回发会“延迟”,并且在 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/

相关文章:

javascript - javascript 中这个与超时相关的功能叫什么?

javascript - 对象构造函数和全局对象有什么区别

javascript - Angular 2 基础知识

jquery - ember-cli http 代理不工作

javascript - Ajax异步: false freezes web page during loading in slow network

javascript - 使用 AJAX 渲染新的 ActiveRecord 结果 - 可能是 Mustache?

javascript - 链接到 javascript 函数的 href 不起作用

asp.net - 浏览器网址中的非英文字符

javascript - 为什么这个选择器不起作用(Jquery 和 Asp.net)

java - ksoap2 org.xmlpull.v1.xmlpullparserexception 预期 start_tag 错误