我有一个剃刀页面 https://myDomain1.com/myFrame.cshtml ,上面有一个“继续”按钮
这个剃刀页面是另一个 parent.cshtml
中的iframe当我点击“继续”按钮时,我想将整个页面(包括父页面)重定向到https://myDomain2.com/default。
以下是我的控制器中的ActionResult
[HttpPost]
public ActionResult myFrame(TestViewModel model)
{
Response.Redirect("https://myDomain2.com/default");
return View(model);
}
使用上面的代码,只有页面的iframe部分重定向,但我的要求是将整个页面重定向到 https://myDomain2.com/default 我的问题在于,我想将整个页面(包括父页面)重定向到 https://myDomain2.com/default 。
请帮我了解如何将整个页面重定向到其他域名
答案 0 :(得分:7)
如果您必须使用此解决方案(坚持使用框架),只需包含javascript内容结果 - 这些内容如下:
[HttpPost]
public ActionResult myFrame(TestViewModel model)
{
return Content("<html><script>window.top.location.href = "http://www.whatever.com"; </script></html>");
}
您的相框必须位于同一个网域中才能发挥作用。
答案 1 :(得分:6)
HTTP不允许您在响应中指定目标框架。
相反,请在原始target="_top"
中设置<form>
,或在目标页面中放置Javascript frame-buster。