Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/391.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 新的php页面从iframe强制进入整个窗口_Javascript_Php_Iframe - Fatal编程技术网

Javascript 新的php页面从iframe强制进入整个窗口

Javascript 新的php页面从iframe强制进入整个窗口,javascript,php,iframe,Javascript,Php,Iframe,我正在从iframe内部调用一个新的url,希望新的url放弃iframe(如果需要,它可以关闭/销毁它),并显示全屏。复杂的是,我无法控制对新php文件的调用,因为它是由信用卡支付服务器作为重定向完成的 为了clrify,我有一个名为order3.php的页面,其中有一个iframe,用于执行信用卡操作。最后,我告诉信用卡服务器,我们现在要转到order4.php(但我不能告诉它任何其他内容,比如带有此指令的脚本,只是页面名称)。现在,order4.php出现在order3.php中的ifrm

我正在从iframe内部调用一个新的url,希望新的url放弃iframe(如果需要,它可以关闭/销毁它),并显示全屏。复杂的是,我无法控制对新php文件的调用,因为它是由信用卡支付服务器作为重定向完成的

为了clrify,我有一个名为order3.php的页面,其中有一个iframe,用于执行信用卡操作。最后,我告诉信用卡服务器,我们现在要转到order4.php(但我不能告诉它任何其他内容,比如带有此指令的脚本,只是页面名称)。现在,order4.php出现在order3.php中的ifrmae中。我想要的是order4.php在加载时声明独立性,并坚持它是全屏的

我不是在偷懒,我已经仔细看过了,但是我不能理解那些只给出一行javascript的帖子,并说那会起作用,因为我不知道把它放在哪里

我试过这个:

<script>document.location.replace('order4.php');</script>
document.location.replace('order4.php');
在order4.php的标题中,但不用说它不起作用。它确实会导致iframe消失,这是一个开始,但随后会在iframe所在的白色区域中显示order3.php。实际上,浏览器在这一点上似乎陷入了一个循环

总之,我可以对order4.php做些什么,这样当它被显示时,它就会忘记过去,就像其他人说的那样,在整个屏幕上显示

请简明扼要地告诉我,如果您愿意提供任何代码片段,请告诉我放在哪里。请记住,我无法控制调用order4.php的语法。我不确定,但我想你可能需要知道我的标题中有:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script> 

感谢是前进。

[已解决]

我不确定这是不是因为它很棘手或者根本不值得轻视而没有被采纳,但这里有一个解决方案,适合任何想要它的人

因此Order3.php具有iframe,并且是起点。第三方服务器被指示调用一个中间页面,该页面处理iFrame的关闭和到order4.php的重定向,而不是直接调用order4。因此,不要直接进入最终目标,而是通过iFrame中的一个控制URL,该URL调用父级(原始order3.php)中的一个函数来关闭iFrame并将整个窗口重定向到最终目标order4

首先声明要在原始php的头中调用的函数order3。我的头文件中包含了一个include.js文件,因此下面的代码就放在那里,但是如果要将代码放在order3的HTML头中,则需要将其包含在脚本标记中。考虑一下,您可能不需要关闭iFrame,只需进行替换就可以离开,但这似乎是可行的,并且消除了任何疑问

function breaktoorder4() {
   window.frames[0].close();
   location.replace("https://www.website.co.uk/order4.php");
}
接下来,创建将在iFrame中调用的中间php(或html)。我称之为breakframe.php。以下是全文:

<html>
<head></head>
<body onload="parent.breaktoorder4();">
</body>
</html>

现在告诉第三方指向breakframe.php而不是order4.php,嘿,presto,您应该在整个窗口中显示order4


我没有在所有浏览器中测试过这个,但它只使用非常简单的函数,所以我认为不会有任何问题。希望这能有所帮助。

您好-有人有什么想法吗-非常感谢您的帮助。谢谢…否决票?????你至少可以发表评论来证明这一点。我知道我是一个新手,可能没有太多的贡献,但只是给我的手指没有解释是不酷的!