Javascript 连续刷新页面时出现问题
当我尝试运行此脚本时:Javascript 连续刷新页面时出现问题,javascript,php,page-refresh,Javascript,Php,Page Refresh,当我尝试运行此脚本时: <form class="form-inline" action="<?php $_SERVER['PHP_SELF']; ?>" method="POST"> <button type="submit" name="buttonSubmit" class="btn btn-default">Submit</button> </form> <?php if (isset($_POST['butt
<form class="form-inline" action="<?php $_SERVER['PHP_SELF']; ?>" method="POST">
<button type="submit" name="buttonSubmit" class="btn btn-default">Submit</button>
</form>
<?php
if (isset($_POST['buttonSubmit'])) {
unset($_POST['buttonSubmit']);
echo "<script>alert(".isset($_POST['buttonSubmit']).")</script>";
echo "<script>location.reload(true);</script>";
}
?>
当您使用location.reload(true)时代码>,您可以通过编程方式执行与单击浏览器“刷新/重新加载”按钮相同的操作
这将一遍又一遍地生成另一个“提交”,因此始终使语句isset($\u POST['buttonSubmit'])
为真
以下是一些解决方案:
location.href='page to load'代码>
-
Location.replace()
会话历史记录
,意味着用户也不能使用后退按钮,
导航到它并导致重复“提交”,这通常会发生
注意,如果'page-to-load'
与已加载的相同,则可以使用location.href
,例如
location.replace(location.href);
另一种方法是,不依赖客户端脚本,而是在服务器端表单提交时执行响应重定向
当您使用location.reload(true)时代码>,您可以通过编程方式执行与单击浏览器“刷新/重新加载”按钮相同的操作
这将一遍又一遍地生成另一个“提交”,因此始终使语句isset($\u POST['buttonSubmit'])
为真
以下是一些解决方案:
location.href='page to load'代码>
-
Location.replace()
会话历史记录
,意味着用户也不能使用后退按钮,
导航到它并导致重复“提交”,这通常会发生
注意,如果'page-to-load'
与已加载的相同,则可以使用location.href
,例如
location.replace(location.href);
另一种方法是,不依赖客户端脚本,而是在服务器端表单提交时执行响应重定向
这对我有帮助:
更改
位置。重新加载(true)代码>到window.location.href=''代码>这对我有帮助:
更改位置。重新加载(true)代码>到window.location.href=''代码>它是此更改的副本位置。重新加载(true)代码>到window.location.href=''代码>是否每次都发出警报working@Ajax. 是的,它每次都会发出警报。它重复了此更改位置。重新加载(true)代码>到window.location.href=''代码>是否每次都发出警报working@Ajax. 是的,它每次都会发出警报。