IFRAME中的PHP"标题(位置)",加载到_top位置?

Spo*_*onk 24 php iframe location header

我有一个简单的表格,在IFRAME里面.当用户单击SUBMIT时,它会重定向到我服务器上的特定页面.我用于重定向的功能是

 header ('Location: mypage2.html');
exit ();
Run Code Online (Sandbox Code Playgroud)

但是我希望新页面在_top位置打开,而不是在我使用的同一个IFRAME中打开.如何告诉浏览器在_top中打开新页面而不是在IFRAME中?提前致谢.

Mic*_*l M 29

您无法在PHP中实现所需的效果.这是您必须从JavaScript或添加target属性到以下内容<form>:

<form ... target="_top">
Run Code Online (Sandbox Code Playgroud)


Dan*_*den 10

您可以使用javascript访问父级.您可以在PHP中回显javascript ..所以您的父页面包含:

function changeURL( url ) {
    document.location = url;
}
Run Code Online (Sandbox Code Playgroud)

在你的PHP脚本中,你回声

<script>
   parent.changeURL('mypage2.html' );
</script>
Run Code Online (Sandbox Code Playgroud)

你不能调用parent.document.location的原因是因为它是只读的 - 你必须在父服务器上有一个可用的函数来执行它.


And*_*rew 9

直接在PHP中重定向父页面而不是iframe的简单方法:

echo "<script>top.window.location = '/mynewpage.php'</script>";
die;
Run Code Online (Sandbox Code Playgroud)

die;不一定是必要的,但是为了防止脚本继续继续,例如,如果在用户的浏览器中禁用了javascript,则"以防万一"是好的.