我正在尝试执行一个js动作,该动作会自动将信息发送到URL以供将来与php一起使用。为此,我在window对象上添加了一个“onload”事件,并修改了侦听器中的URL。这是迄今为止的样子:
window.addEventListener("load", function() {
window.location = "?test=test";
}, false);
当我加载页面时,URL会发生变化,但会反复重复,直到浏览器崩溃为止。我只是想知道是否有办法只执行一次。
答案 0 :(得分:0)
在重定向之前,检查您是否已经在该页面上。
答案 1 :(得分:0)
在网址上添加一个简单的标记,如下所示:window.location = "?test=test&second=true";
答案 2 :(得分:0)
正如How can I get query string values in JavaScript?
中所述编写一个函数来检查JS GetQueryStringParams()
中的URL参数然后正如其他人所建议的,在重新加载时传递一个发送参数
window.location =“?test = test& second = true”;
使用JS中的函数来检查你是否有第二个URL查询字符串,如果它没有,那么重新加载页面
答案 3 :(得分:0)
如果你不想使用AJAX,并且不想编写JS函数来解析查询字符串,为什么不简单:
<?php if(!isset($_GET['test'])): ?>
<script>
window.addEventListener("load", function() {
window.location = "?test=test";
}, false);
</script>
<?php else: ?>
<!--No JS written on the page, so no redirect -->
<?php endif;?>
但你真的应该研究一下AJAX,尝试使用像jQuery这样的JS框架来帮助你完成这个过程:http://api.jquery.com/jquery.ajax/
答案 4 :(得分:0)
如果你想传递变量,请执行以下操作:
<?php
if(!isset($_GET['page'])){ //this line check if the variable field is available
$a = "Blank";
}else{
$a = $_GET['page'];
}
?>
就是这样。