超时后ASP.NET javascript关闭页面?

时间:2012-06-25 11:25:56

标签: javascript asp.net code-behind

我希望在成功db opartions之后显示一个信息页面。在信息之后我想关闭每个页面(信息页面和主页面)

我在按钮oncommand事件中写了这个:

//but this code does not work
Response.Write("<script language='javascript'>setTimeout('self.close();',3000);</script>");

同时,我想显示一条信息消息。然后我想在三秒钟之后关闭所有。我希望我能解释一下:)

感谢。

2 个答案:

答案 0 :(得分:2)

Firefox只允许window.close();并且只有当你用脚本打开窗口时。

参考:window.close

  

调用此方法时,将关闭引用的窗口。

     

仅允许为打开的窗口调用此方法   通过使用window.open方法的脚本。如果窗口没有打开   通过脚本,JavaScript控制台中出现以下错误:   脚本可能无法关闭脚本未打开的窗口。

答案 1 :(得分:1)

我解决了问题并且适用于所有浏览器。

这是代码:

String MyScript = "";
MyScript += "<script language='javascript'>";
MyScript += "   window.open('', '_self', '');";
MyScript += "   top.window.close();";
MyScript += "</script>";
Page.ClientScript.RegisterClientScriptBlock(GetType(), "PopupClose", MyScript);