ASP.NET如何从框架内的页面重定向到另一个网站
问题描述:
我在框架内获得一个页面,该页面旨在将用户重定向到另一个网站。但是,只有框架内的页面被更改为另一个网站。ASP.NET如何从框架内的页面重定向到另一个网站
我可以用什么样的方法将整个结果重定向到另一个网站?
谢谢!
答
当你的网页是一个iframe里面,Response.Redirect
只重定向相同的页面,也就是在iframe,而不是父一个 - 一个解决方法是注册一个JavaScript调用,能“说”父窗口重定向。在代码
ClientScript.RegisterStartupScript(this.GetType(), "scriptid",
"window.parent.location.href='redirectpage.aspx'", true);
后面父窗口重定向到一个新的位置:
例如,你可以做到这一点。
就像您可以从任何javascript代码调用此脚本来向顶部窗口发送重定向一样。
top.location.href = "redirect.aspx" ;
参考:asp.net forum,
How to prevent IFRAME from redirecting top-level window
答
在Asp.net只需使用:
Response.Redirect("webpagename.aspx");
+1
您似乎没有阅读过这个问题。这只会重定向*该帧,而不是整个页面。 – 2012-08-22 11:55:35
什么是 “scriptid” 代表什么?那只是我们正在查看的给定ClientScript进程的名称?或者那个名字被其他地方引用?我假设这是一个.cs文件中的条件语句,对吧?顺便谢谢你的解决方案! – blackhawk 2013-04-12 15:43:43
@blachawk scriptid只是一个随脚本一起出现的随机名称。 ClientScript检查该名称并避免多次添加相同的ID。 – Aristos 2013-04-12 16:58:07