asp.net - 如何拦截 ASP.NET 中的异步请求/获得有关异步请求的通知?

标签 asp.net jquery

我需要收到有关 ASP.NET 中的异步请求的通知。我使用了 jQuery .ajaxSend 全局事件,但在使用 UpdatePanels 时它不会触发。

是否有一种多浏览器方法可以检测页面上何时发出请求?

最佳答案

Jquery 和 ASP.Net Ajax 是两个不同的 JavaScript 框架,它们各自处理 Ajax 请求的方式不同。因此,Jquery 中使用的代码将不会挂接到 ASP Ajax 中。

我处理此类事情的一种方法是 Hook 页面请求管理器 (ScriptManager) 并向 InitializeRequest 和 EndRequest 事件添加方法。

一些类似这些的 JavaScript 应该可以解决你的问题。

<script type="text/javascript">

    // Get the instance of PageRequestManager.
    var PageRequestManager = Sys.WebForms.PageRequestManager.getInstance();

    // Add to the events
    PageRequestManager.add_initializeRequest(PageRequestManager_InitializeRequest);
    PageRequestManager.add_endRequest(PageRequestManager_EndRequest);

    // Called when async postback is initialized
    function PageRequestManager_InitializeRequest(sender, args)
    {
    }

    // Called when async postback calls back
    function PageRequestManager_EndRequest(sender, args)
    {
    }
</script>

编辑: 查看 Asp.Net Ajax 的生命周期,如果initializeRequest 太早,您还可以使用 beginRequest 事件。

关于asp.net - 如何拦截 ASP.NET 中的异步请求/获得有关异步请求的通知?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3754231/

相关文章:

asp.net - 如何在 Global.asax 中获取 session

javascript - Javascript函数自行调整大小

jquery - add::before 'content' 到 CSS class 如果类内容的值小于 10

javascript - 如何使用jquery知道选择了哪个数字选项

javascript - 在 JavaScript 中创建命名空间/类类型结构的最优雅方式

javascript - jQuery : how to hide div after animation?

c# - FormsAuthentication 登录在设置授权票证后拒绝重定向

html - 所选选项卡上的选项卡菜单颜色未更改

c# - 使用 Bloomberg API 时 session 未在 C# 中启动

asp.net - ASP.NET Web 应用程序之间的引用