【发布时间】:2010-05-26 09:06:52
【问题描述】:
为了不让你感到厌烦,我正在编写一个 asp.net 应用程序,它必须在新的浏览器窗口中打开一些页面。
我设法使用以下代码在回发中打开它们(不要问为什么,我只需要这样做):
script = String.Format(@"window.open(""{0}"", ""{1}"");", url, target);
ScriptManager.RegisterStartupScript(page, typeof(Page), "Redirect", script, true);
现在我有了新窗口,每个窗口都有一个应该关闭它的按钮。我只有一个onclick="window.close()"(但是当我关闭浏览器时会提示我)或window.open('','_self','');window.close()(可怕,我同意,但这是我发现避免 JS 提示的唯一方法)
在 Firefox 上它运行良好,但在 IE7(我们客户的浏览器)上 2-3 次后我使用该按钮关闭窗口我无法打开其他窗口(在这两种情况下,有或没有 JS 提示) .使用上面的方法,它什么都不做,<a href="mypage.aspx" target="_blank">click me</a> 会打开一个新窗口,但在加载时挂起(它甚至不调用 Page_Load)。
可能是什么原因?我该如何解决这个问题?
谢谢。
编辑:
我忘了提到我在大多数页面中都使用 MS Ajax,这可能是迫使我在 window.close() 之前使用 window.open('','_self',''); 的原因
我不知道这是否也会导致 IE 挂起
【问题讨论】:
-
这是
<button>还是<input>?可能是回发正在取消window.close操作。 -
对不起,也许我解释得不是很好。不要专注于关闭部分,它有效,窗口关闭,我只是添加解释我的工作。问题是我成功关闭了 2-3 次后,我无法再打开任何窗口。
-
我遇到了同样的问题。先生,您救了我,谢谢!
标签: asp.net javascript internet-explorer