【问题标题】:UpdatePanel async request hangs when there is a content-length mismatch当内容长度不匹配时,UpdatePanel 异步请求挂起
【发布时间】:2013-11-25 01:45:02
【问题描述】:

我在更新面板中有一个家庭成员选择控件。当我单击某个家庭成员选项卡时,更新面板会进行部分回发,并导致页面上的其他更新面板也进行部分回发。

我的问题是,在 IE10 中,当我单击几个连续的家庭成员选项卡时,我最终从 Fiddler 收到内容长度为零的警告,这与响应标题报告的内容不同。这在 Chrome 或 FF 中不会发生,并且在本地发生的频率要低得多,因为服务器的响应要快得多。

我想这与 IE10 与 Webkit 如何处理取消的请求有关,但我不知道该怎么办。

我在 Google 上搜索了一段时间,但我可能没有正确的术语来找到我正在寻找的答案。

有人见过这种行为吗?

【问题讨论】:

    标签: c# asp.net updatepanel internet-explorer-10 microsoft-ajax


    【解决方案1】:

    当有超过 4 个并发异步回发运行到同一台服务器时,IE10 似乎挂起。由于每个连续的请求都会导致最后一个请求没有实际意义,因此我只是添加了Javascript,以便在通过单击任何选项卡发出新请求时取消上一个请求。

    标签的点击事件我附上的代码如下:

    function StopCurrentRequest() {
        var prm = Sys.WebForms.PageRequestManager.getInstance();
        if(prm.get_isInAsyncPostBack())
        {
            prm.abortPostBack();
        }
    }
    

    【讨论】:

    • 任何使用 StopCurrentRequest 的完整示例?
    • @Kiquenet 抱歉,我已经换了工作场所,有一段时间没有使用网络表单了。
    猜你喜欢
    • 1970-01-01
    • 2014-10-06
    • 2016-12-02
    • 2011-07-27
    • 1970-01-01
    • 2018-05-21
    • 1970-01-01
    • 2018-07-12
    • 2018-04-18
    相关资源
    最近更新 更多