停止浏览器要求在刷新时重新发送表单数据?

Boj*_*les 36 html firefox post

我通过POST提交表单.我提交表单,一切都很好,但是如果我尝试重新加载表单在提交后转到的新页面,我会收到"你想重新发送数据"消息(FireFox).它也可能在其他浏览器中发生,但我不确定.

有没有人知道一种方法来阻止这个消息弹出,所以我可以继续刷新页面.这对生产环境不利 - 用户可以两次提交相同的表格!

SLa*_*aks 48

您需要使用POST-Redirect-GET模式.

通过重定向到GET请求来使表单响应.
这样,当用户刷新页面时,它只会重新发送GET.

  • 完整说明:http://www.theserverside.com/news/1365146/Redirect-After-Post (10认同)
  • @Michael:你的意思是302. (2认同)

小智 9

一个简单的方法response.sendRedirect是以这种方式重新加载页面:

window.location.href = window.location.pathname;
Run Code Online (Sandbox Code Playgroud)

这个对我有用.