【问题标题】:Cannot do response.redirect from page with Ajax controls无法使用 Ajax 控件从页面执行 response.redirect
【发布时间】:2009-07-31 22:25:39
【问题描述】:

我有一个包含许多用户控件的页面,每个控件都使用 Ajax。当我加载这个页面时,在某些条件下,我想做一个 response.redirect;但是 response.redirect 语句被 Ajax 代码捕获并且永远不会发生。

如何从包含 Ajax 控件的页面执行 response.redirect?

谢谢....

【问题讨论】:

  • 什么代码困住了?你能告诉我们吗?

标签: asp.net ajax asp.net-ajax response.redirect


【解决方案1】:

您可以使用 Javascript 来重定向,而不是使用 Response.Redirect。

window.location = "[url to redirect]";

【讨论】:

    【解决方案2】:

    将此添加到您的 web.config:

    <httpModules>
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    </httpModules>
    

    【讨论】:

      【解决方案3】:

      重定向不会重定向用户,而是重定向 XmlHttpRequest,而不是用户为访问页面而发出的请求。您可以根据 ajax 调用返回的值在 javascript 中设置 location.href。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-03-15
        • 1970-01-01
        • 1970-01-01
        • 2011-07-03
        • 2023-03-25
        • 1970-01-01
        相关资源
        最近更新 更多