在我正在处理的房地产网站上,我在“房产详细信息”页面上有一个“联系我”表单,用户可以单击“联系我们”按钮,该按钮将在模式对话框中加载表单,iframe加载联系我们表格,填写一些细节并发送给我们。
表单处理后服务器端我必须从调用dialog close方法的服务器发出JavaScript代码,然后将用户重定向到感谢页面(如果我在服务器上做了一个简单的重定向,iframe会得到谢谢你我不想要的页面。
问题出现在Chrome中,如果您点击浏览器的后退按钮,则会安静地重新提交联系表单。
注意:IE和Firefox根本没有这个问题。
我发现以下链接很有用,但不是我的问题的答案:
我们已尝试各种技术来规避Chrome中的问题,例如隐藏字段,保险缓存已关闭,在重定向到感谢页面之前销毁iframe。在没有询问你是否要重新提交的情况下,它一直没有重新提交表格(不是它应该重新提交)
答案 0 :(得分:0)
刚刚遇到这个问题,我正在考虑的是在表单中包含某种一次性令牌(即GUID),如果我们在服务器上重新检测到,我们可以忽略表单帖子。可能会在服务器上使用会话状态来跟踪 - 就像Rails authenticity token
一样