【问题标题】:Jquery dialog close when session timeout会话超时时关闭 Jquery 对话框
【发布时间】:2013-11-28 11:32:49
【问题描述】:

我正在使用一个 ASP.NET MVC4 应用程序,该应用程序加载大量 jQuery 对话框,并在单击事件时在 div 中显示部分视图。当会话超时时,我遇到了一个问题,应用程序登录页面在 jQuery 对话框弹出窗口中加载。

有没有办法在会话超时时关闭 jQuery 对话框弹出窗口,以便返回到实际的应用程序登录页面重新进行身份验证?

这是我的行动结果

if (Request.IsAuthenticated)
{
    try
    {
        // Do something
    }
    catch { throw; }
    finally
    {

    }
}
else
{
    return RedirectToAction("Index", "Home");
}

【问题讨论】:

    标签: jquery jquery-dialog asp.net-mvc-partialview


    【解决方案1】:

    在您的登录页面代码中检测会话是否过时,如果是,则返回一些内容以在浏览器中重新加载整个页面。

    如果您使用的是 iframe,您可以只返回 JS 将元刷新添加到页面...

    <script>
        $(parent.document.getElementsByTagName('head')[0]).append('<meta http-equiv="refresh" content="0">');
    </script>
    

    如果您直接将 AJAXing 放入一个 div,您可以只返回元刷新标签,它应该重新加载页面...

    <meta http-equiv="refresh" content="0">
    

    【讨论】:

    • 如何从控制器 actionresult 返回
    • 不知道队友,但我猜会有很多方法。有一个谷歌,但我会接近它,甚至可能会创建一个新视图来处理这个问题,或者将登录视图包装在一个有条件地查看 ViewBag 中的变量中。
    猜你喜欢
    • 2014-11-05
    • 1970-01-01
    • 2014-10-21
    • 2016-02-06
    • 2011-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多