作家
登录

javascript下阻止表单重复提交、防刷新、防后退

作者: 来源:www.28hudong.com 2013-03-30 03:19:47 阅读 我要评论

1 服务器端的解决方法。这是我最为推荐的方法。优点是判断准确,兼容性最大。 做法:a页面显示表单,然后提交b页面处理,处理完后重定向到c页面显示结果。 1.0 在访问a页面时在session里生成一个标志ID,例如 //伪代码 session("submitID")=random() 然后把这个值写到表单的一个hidden的input里 //伪代码 <%response.write("<input name=submitID2 type=hidden value=""+session("submitID")+"">")%> 1.1 b页面处理时判断表单所提交的submitID2的值是否和session中的submitID一致,不一致的话重定向到报错页面,一致的话把session中的submitID清空然后进行表单处理 //伪代码 session("submitID")="" //然后处理提交...... 处理完成后重定向到c页面 1.2 c页面其实就没什么好说的了,就是一个显示处理结果的页面。 2 客户端用js解决 这种方法不好,因为必然会遇到不同浏览器的兼容性问题,而且是必然可以绕过的。唯一的优点就是简单,不需要太多的编码 2.0防止后退 在每个页面的最顶上加上这个代码 <script>window.history.forward();</script> 2.1防止刷新 我很难想到什么好方法可以做到。因为要屏蔽的地方太多了。只好采用一种很烂的方法: <body onunload="location='about:blank'>" <!-- 这个方法只是个想法,没有经过调试 -->

  推荐阅读

  真见识了-全代码编写的图片

[Ctrl+A 全选 注:如需引入外部Js需刷新才能执行] ############# ############## ############################ ############################ ############>>>详细阅读


本文标题:javascript下阻止表单重复提交、防刷新、防后退

地址:http://www.17bianji.com/kaifa2/JS/30163.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)