给定的是一个表单后跟一个确认页面,您必须确认您输入了以前表单的数据。现在,如果用户刷新此重演页面,则数据将形成之前的表单重新发布。有没有办法在JavaScript中阻止它?
我知道它不是一个理想的解决方案,它应该发生在服务器端。但在这种情况下我别无选择。
答案 0 :(得分:14)
您可以使用history.replaceState(null, document.title, location.href);
在JavaScript中执行此操作以清除帖子数据。我已经在MVC相关的表编辑器(我自己创建的)上测试了这个,该编辑器发布到同一个URL并且它运行良好。
答案 1 :(得分:6)
您无法阻止用户使用javascript重新发布。这应该使用redirect after post模式在服务器端完成。
一种可能但不健全的解决方案是使用window.location.href
模拟javascript的重定向。