X龙@China .Net 'blog

需要的不仅仅是工作,而是通过努力得来的美好将来。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

关闭所有打开的子窗口

Posted on 2009-01-08 16:19  X龙  阅读(314)  评论(0编辑  收藏  举报

在构建Web应用程序时,会从窗体打开多个子窗体。

在有些软件中要验证用户是否有访问页面的权限,当用户在多重子窗体中操作时,由于某些原因(session超时、服务器重启等)断开了连接,些时用户得重新登录。

我的系统的处理方案是关闭所有的子窗体,再在主窗体中载入登入页面。

具体js代码:(我重Page页面继承一个PageBase类,再在PageBase中定义一个方法TestLogin进行验证,在TestLogin中注册如下js脚本)

var p = window;

var baseWeb;

var loginUrl ="login.aspx";

function closeOpener()

{

  baseWeb=p;
p = p.opener;
if(p!=null)
{
baseWeb.close();
closeOpener();
}
else
{
baseWeb.parent.location=""" + loginUrl + """;
return;
}

}

点击这里给我发消息http://wp.qq.com/index.html