最后,我找到了一种方法,但是这是一个有点工作围绕但它会做现在的工作
Dim url1 As String = "MYURL.html"
Response.Write("<script>")
Response.Write("newwindow=window.open('" + url1 + "','_blank');")
Response.Write("newwindow.focus()")
Response.Write("window.open('" + HttpContext.Current.Request.Url.AbsoluteUri + "','_self')")
Response.Write("</script>")
下面的行的代码会得到相同的网址,并在同一个标签中打开它(比如location.reload();
会做的,但我不能在这种情况下使用它,所以我想出了这个替代品),并且第一页有一个meta标签可以打开页面在ie边缘一切似乎都很好。
Response.Write("window.open('" + HttpContext.Current.Request.Url.AbsoluteUri + "','_self')")
编辑: 如果弹出窗口拦截,阻止网站仍然在第一页会去怪异模式..但与它下面的代码将提醒用户解决问题如果弹出式窗口拦截是关闭它显示了第二页
Dim url1 As String = "MYURL.html"
Response.Write("<script>")
Response.Write("newwindow=window.open('" + url1 + "','_blank');")
Response.Write("if(!newwindow || newwindow.closed || typeof newwindow.closed=='undefined'){")
Response.Write("alert('please disable pop-up blocker for this site');")
Response.Write("}")
Response.Write("else{")
Response.Write("newwindow.focus();")
Response.Write("}")
Response.Write("window.open('" + HttpContext.Current.Request.Url.AbsoluteUri + "','_self')")
Response.Write("</script>")
编辑2:我finall Ÿ发现问题是什么...实际response.write是我的第一页转到怪癖模式,并修复它的原因我用Page.RegisterClientScriptBlock像波纹管打开我的窗口,一切工作就像它应该
Page.RegisterClientScriptBlock("", "<script>window.open('" & MYURL & "', '_blank', 'toolbar=no');</script>")
谢谢你的回答......我真的应该在一个按钮上使用这段代码,所以我在上面的代码上试了一次,但是“return false”阻止了新窗口被打开,所以第一页只刷新了,怪癖模式 – NikiUsefi
nop,首先调用该函数打开窗口。并在返回false后阻止源网页,重试它。 – Mimouni
我再次尝试,但它仍然有相同的效果,我认为这是因为它在服务器上运行发生...我不能添加“fen_pop('MYURL.html');返回false;”直接在按钮的onclick属性中,因为它现在还不存在,如果我在后面的代码中写入这个返回false而没有fen_pop函数,它仍然会有相同的效果 – NikiUsefi