会话超时时关闭Jquery对话框
我正在使用一个ASP.NETMVC4应用程序,它加载了许多jQuery对话框,其中包含div点击事件中的部分视图。我遇到了一个问题,当会话超时时,jQuery对话框弹出窗口中会加载应用程序登录页面 当会话超时时,有没有办法关闭jQuery对话框弹出窗口,以便返回到实际的应用程序登录页面进行重新验证 这是我的行动结果会话超时时关闭Jquery对话框,jquery,jquery-dialog,asp.net-mvc-partialview,Jquery,Jquery Dialog,Asp.net Mvc Partialview,我正在使用一个ASP.NETMVC4应用程序,它加载了许多jQuery对话框,其中包含div点击事件中的部分视图。我遇到了一个问题,当会话超时时,jQuery对话框弹出窗口中会加载应用程序登录页面 当会话超时时,有没有办法关闭jQuery对话框弹出窗口,以便返回到实际的应用程序登录页面进行重新验证 这是我的行动结果 if (Request.IsAuthenticated) { try { // Do something } catch { thro
if (Request.IsAuthenticated)
{
try
{
// Do something
}
catch { throw; }
finally
{
}
}
else
{
return RedirectToAction("Index", "Home");
}
在登录页面代码中,检测会话是否过时,如果是,则返回一些内容以在浏览器中重新加载整个页面 如果您使用的是iframes,那么只需返回将元刷新添加到页面的JS即可
<script>
$(parent.document.getElementsByTagName('head')[0]).append('<meta http-equiv="refresh" content="0">');
</script>
<meta http-equiv="refresh" content="0">
$(parent.document.getElementsByTagName('head')[0])。追加(“”);
如果您正在直接AJAXing到一个div中,您只需返回meta-refresh标记,它就会重新加载页面
<script>
$(parent.document.getElementsByTagName('head')[0]).append('<meta http-equiv="refresh" content="0">');
</script>
<meta http-equiv="refresh" content="0">
如何从控制器actionresult返回?不知道,伙计,但我猜有很多方法。我有一个Google,但我甚至会创建一个新的视图来处理这个问题,或者将登录视图包装在一个有条件的视图中,查看ViewBag中的一个变量。