要显示此页面,Firefox必须发送重复先前执行的任何操作(如搜索或订单确认)的信息


To display this page, Firefox must send information that will repeat any action (such as a search or order confirmation) that was performed earlier

嘿,我得到了firefox的确认。

To display this page, Firefox must send information that will repeat any action
(such as a search or order confirmation) that was performed earlier.

有人知道这个确认是为了什么吗?

如何摆脱这种局面?

尝试将请求类型从POST更改为GET。

如果不能改变请求类型,要重新加载页面,请尝试使用:

window.location=window.location;

代替

window.location.reload();

正如在回答阻止firefox重新加载确认的问题时所建议的那样

在Firefox、Chrome中工作得很好。。

当刷新POST请求(而不是GET请求)的结果页面时,会发生这种情况。

为了避免这种情况,您可以使用POST/redirect/GET模式。

我在自己创建的一个网站上遇到了这个问题。我最终完成了所有的后端工作,然后使用了以下代码:

header("Location: webpage.php", true, 303);

这将清除任何帖子数据并重定向页面,这样重新加载就不会再导致该消息。

刷新发送POST数据的页面时(例如,完成表单时)会发生这种情况。这个问题是问你是否想重新发送数据,因此,如果你进行了搜索,搜索到的术语将再次发送到服务器。当你填写了一个订购了东西的表格时,这是很危险的,所以刷新页面并重新发送数据会在该网站上创建新订单。

听起来对页面的请求来自POST

您应该使用Post/Rerect/Get模式。

在我的搜索表单中将方法请求类型从POST更改为GET,并去掉了确认框。。

将现有代码"top.location.reload()"替换为代码"top.location.href=top.location.href"https://support.mozilla.org/en-US/questions/695164

Firefox发出警告的方式;表示您正在使用post方法重新提交表单。

以下变通方法对我有效。

<form id="yourDummyform" method="post" action="yourPostActionURL?var1=val1&var2=val2">
<!--or some hidden variables here -->
</form>

关于ajax调用或某个事件的成功进行

$("#yourDummyform").submit();

我已经为我的需求解决了这个问题。我在表单提交后添加了以下代码

document.getElementById("frmtbl").submit();
document.getElementById("nxt").click();
document.getElementById("frst").click();

nxt和frst是导航栏上下一页和第一页的链接。其他人可能会得到线索。