我每4秒钟使用javascript加载一个页面(lobby_box.php)。此页面正在我的(index.php)页面上的div中加载。问题是(lobby_box.php)包含应从index.php> anotherpage.php重定向客户端的代码。但是它将客户端重定向到div内部的(anotherpage.php),该div每4秒加载一次(lobby_box.php)。
因此,基本上,它不会重定向整个页面,而不会重定向整个div。
我已经尽力使用所有可以动手的东西。我一直在尝试使用javascript,jquery,php代码进行重定向,但它仍然仅在div内进行重定向。
function getLobbyBox() {
var http;
if (window.XMLHttpRequest) {
http = new XMLHttpRequest();
} else if (window.ActiveXObject) {
http = new ActiveXObject("Microsoft.XMLHTTP");
}
http.onreadystatechange=function()
{
if (http.readyState==4 && http.status==200)
{
document.getElementById("lobby_new_content").innerHTML= http.responseText;
}
}
http.open("GET", "includes/lobby_box.php?noCache=" + Math.random(), true);
http.send();
}
这是每4秒加载一次(lobby_box.php)的函数。
这是应该重定向到anotherpage.php的代码,但仅在div内重定向到它。
if(mysqli_num_rows($game) > 0) {
echo '<script>window.location.href = "/anotherpage.php";</script>';
exit();
}
我也尝试过
if(mysqli_num_rows($game) > 0) {
header('location: anotherpage.php');
exit();
}
是否有可能像这样解决它?还是我需要寻找另一种方法?
答案 0 :(得分:0)
假设父页面和iframe页面都在同一域中,则可以轻松地从框架中调用window.parent
并以这种方式重定向。
window.parent.location.href = '/whatever-page';
答案 1 :(得分:0)
问题解决了。
可能不是真正的框架,而是使用XMLHttpRequest在div中加载的内容。工作代码是。
<META http-equiv="refresh" content="0;URL=/anotherpage.php" target="_new">
我只是将其放在if语句中的回显中。