使用javascript在新窗口中打开文件

时间:2013-09-20 07:08:37

标签: c# javascript

我正在检查我的应用程序与不同浏览器的兼容性,并且我遇到了这个问题,其中一些浏览器不会在新窗口中打开表单。

我正在使用的脚本:

string theScript= "<script>window.open('" + fileLocation + "','_blank','height=400,width=400,scrollbars=Yes,resizable=Yes')</script>";
ScriptManager.RegisterStartupScript(this.Page, this.Page.GetType(), "blah", theScript, false);

有办法解决吗?提前谢谢。

2 个答案:

答案 0 :(得分:1)

弹出窗口阻止程序将阻止该类型的窗口。这就是为什么它不会出现,因为没有用户操作导致它打开。

如何解决?

  • 让人们为您的域禁用弹出窗口拦截器。
  • 或者打开客户端弹出窗口并让服务器将其重定向到正确的位置

答案 1 :(得分:0)

您可以检测弹出窗口是否被阻止,并为用户提供更改其浏览器的选项:

var pop = window.open("about:blank", "alert_window", "height=150,width=150");

// Detect pop blocker
setTimeout(function() {
if(!pop || pop.closed || pop.closed == "undefined" || pop == "undefined" || parseInt(pop.innerWidth) == 0 || pop.document.documentElement.clientWidth != 150 || pop.document.documentElement.clientHeight != 150){
pop && pop.close();
alert("Popups must be enabled.");
}else{
alert("Popups is enabled.");
pop && pop.close();
}}, 1000);