FORM表单重复提交问题解决方法
来源:互联网 发布:linux查看用户和组 编辑:程序博客网 时间:2024/05/22 15:18
(1)首先如果是提交表单后提交按钮变灰/隐藏提交按钮,但是这个办法不能够防止“刷新”的重复提交,不是很推荐(如果能够结合后面的方法,这个在表现形式上还是不错的)
(2)最简单:页面提交后转到另一个页面而不是本页面,这个办法可能有朋友会说,如果我就是要留在原页面呢,其实这个时候你可以写一个中间页形式的东西,在跳回来。
(3)在js里设置全局变量,提交后修改该变量的值,依据变量的值判断是否重复提交
var flag=false;
function checkForm(){
if (flag==true){
return false;
}
flag=true;
document.form1.submit();
}
(4)在登录用户的Session中,放置一个随机数作为同步标记,并在初始化新增或编辑页面时就返回到前台页面中,用隐藏域赋值,当form被提交时,form中的同步标记就和Session中的同步标记作对比。在form首次提交的时候,这两个标记应该是一样的。如果标记不一样,那么该form就会禁止提交,一个错误就会返回给用户。在用户提交一个form时,如果按下浏览器中的后退按钮并尝试重新提交同一个form时,标记就会出现不匹配的现象。
另一方面,如果两个标记值匹配,那么我们就可以确信整个流程是正确的。在这种情况下,Session中的标记值就会被修改为一个新的值,同时允许提交该form。
还可以使用这个策略来控制对某些页面的直接访问,就好象上面资源保护中描述的一样。例如,假设一个用户将某个应用的页面A收藏到收藏夹中,而页面A 只允许通过页面B和C访问。当用户直接通过收藏夹来访问页面A,这时页面的访问顺序就是不正确的,这样同步标记将处在一个不同步的状态,或者它根本就不存在。不论怎样,访问都被禁止了。
以上是我遇到这个问题然后上网查资料之后总结的几点,个人觉得2,3比较实用
- FORM表单重复提交问题解决方法
- FORM表单重复提交问题解决方法
- form表单重复提交
- 表单重复提交问题解决
- jquery提交form表单时禁止重复提交的方法
- 防止form表单重复提交
- form表单重复提交问题
- 防止form表单重复提交
- form表单避免重复提交
- php 解决和避免form表单重复提交的方法
- php 解决和避免form表单重复提交的方法
- php 解决和避免form表单重复提交的方法
- php 解决和避免form表单重复提交的方法
- php 解决和避免form表单重复提交的方法
- 防止form表单重复提交的八种方法
- Form表单提交方法
- struts1 表单重复提交问题解决!!
- Form表单提交方法method
- 遍历整个目录树的文件和目录
- JavaScript技巧小招数
- android——不错的网络编程知识
- Android 网络通信框架Volley简介(Google IO 2013)
- mysql基本指令
- FORM表单重复提交问题解决方法
- KMP算法中关于构造DFA部分的纠结
- SIFT-sift.m
- .NET下的内存分配机制
- 博客生涯新的开始
- 浮点数的表示
- Sephiroth Python 分割文件以及合并文件
- Recursive class initialization in Java
- Eclipse下安装GEF和AmaterasUML