我有一个javascript块,它在发出ajax请求后重新加载当前url。有时重新加载的URL有GET变量,有时候是POST。
对于POST变量,以下提示用户确认重新提交表单数据:
window.location.reload();
所以我切换到了没有提示的内容:
window.location = window.location;
但第二种解决方案的问题是,在没有POST变量的情况下,页面不会加载!
我只需要加载当前的URL - 无论是POST还是GET。我不关心任何POST变量的原始值。
更新
另一个问题,为什么Chrome会提示我重新提交表单数据,但是Forefox和Edge呢?
答案 0 :(得分:0)
您可以在设置值之前检查是否设置了帖子/获取。然后它将继续页面的其余部分。
您可以使用isset();
像这样:if(isset($_POST['yourPostVariable'])){
$yourPostVar = $_POST['yourPostVariable'];
} else {
$yourPostVar = "";
}
与GET相同:
if(isset($_GET['yourGetVariable'])){
$yourGetVar = $_GET['yourGetVariable'];
} else {
$yourGetVar = "";
}
如果您使用靠近代码顶部的所有变量来执行此操作,那么它可能会解决您的问题。
答案 1 :(得分:0)
我发现这个解决方案似乎有效:
barCode(int zip)
基本上我正在重新构建一个似乎再次调用该页面而不重新加载POST变量的URL。