当我们提交一个表单之后可以重定向来防止刷新来重复提交表单,但在有些情况下,通过游览器的后退再来提交,就会重复提交表单,为了解决这个问题,我们可以使用struts中的Token.
下面给出一个例子:
1,我们在转向表单的Action中加入代码
saveToken(request);
2,我们在处理表单的Action加入代码:
/**验证FORM的重复提交 */
if(!isTokenValid(request)){
return null;
}else{
resetToken(request);
}
注:这些方法是Struts中自带的方法.
分享到:
相关推荐
先说对话框(Dialog)里的表单提交 错误方案 说起错误方案,比如,点击提交按钮,本地验证,验证通过立即让按钮不可点,这些没问题,而我的错误点概括是:在某个最后执行的回调函数的最后一行,我做了2个操作:1,...
为什么要避免form表单被重复提交呢?因为我们不想让我们的服务器重复处理没必要的数据,同时我们也是避免我们的数据库产生重复的数据,避免表单重复提交也是让我们的网站更安全的一种表现。 先看一下有哪些情况下回...
ajaxSubmit 提交使用的文件,解决form提交后导致重复提交数据问题
在开发中,如果一个新增或修改的表单,在后台完成数据库操作后我们设定的不是跳转到其他页面,还是返回本页面,这时点击浏览器的后退再提交或刷新页面,会导致form表单重复提交,即这条记录会被增加或修改两次。...
对于重复提交我们也有一些的解决方案—-前端验证: 就是在ajax提交之后把按钮给禁用掉,就是在没有得到响应之前,是不能够重复点击按钮的。 若是使用form表单进行提交,对于js提交表单之前将按钮
由于在项目中应用了Jquery Validation表单验证插件,所以要实现在Validation验证完毕后,提交form,然后禁止按钮。CodeProject上有一个DisableBtnPostBack项目,但不无法和Jquery Validation结合,代码先贴出来,给...
在submit()后加个return false就可以了。... 以后要注意了 后面尝试了另一种方法: 代码如下: if ($(“#formid”).validationEngine(“validate”)){ document.getElementById(“formid”).submit(); } 也是可以的
页面处理表单提交时,先判断是否有这个session,如果不存在就保存,存在就和post过来的随机数比较,如果相等表示重复提交。 代码示例: 表单部分 <form action=# method=post> <label
另外,在提交事件发出后,最好将提交按钮设置为disabled,防止由于网络延时问题,让用户有机会进行多次点击重复提交。 onclick事件里面执行 $(this).attr(‘disabled’,’disabled’); 在点击一次后立马将按钮设置为...
jsp防止重复提交 这做最好结合让jsp页面过期一起用。当用户返回到上一表单页面时(按backspase键、返回按钮,右击--返回),让表单页面过期。这样才可以让用户主动的刷新jsp而从新生成一个session.setAttribute(...
form id="reg" action="post.php" method="post"> 用户名:<input type="text" class="input" name="username" id="user"> 密 码:<input type="password" class="input" name="password" id="pass"&...
Struts开发技术:分页,迭代数组,struts标签, 动态提交form,解决重复提交,
当点击提交后,提交按钮变灰色不可用,这样可有效防止重复提交,本代码就是实现这样一个功能。从代码就可以看出,我们只需在提交按钮上加入这一句: onclick=”[removed]{this.disabled=true;document.form1.submit...
在有网络延迟等情况下,会用重复提交的情况。 问题归类:安全性问题 解决方案:增加FormToken密钥防止重复提交 涉及模块:充值提现
主要介绍了表单提交错误后返回内容消失问题的解决方法,需要的朋友可以参考下
07 Struts标签 -LOGIC标签 08 Struts标签- HTML标签 09 Struts高级部分(1)(解决重复提交、上传组件) 10 Struts高级部分(2)(常用Action、验证框架、动态Form) 11 留言管理程序_使用Struts + DAO...
9-Struts高级部分(1)(解决重复提交、上传组件)笔记 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记 J2EE框架_笔记_b: 11-留言管理程序_使用Struts + DAO完成笔记 12-Struts + DAO分页笔记 16-...
9-Struts高级部分(1)(解决重复提交、上传组件)笔记 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记 J2EE框架_笔记_b: 11-留言管理程序_使用Struts + DAO完成笔记 12-Struts + DAO分页笔记 16-...
9-Struts高级部分(1)(解决重复提交、上传组件)笔记 10-Struts高级部分(2)(常用Action、验证框架、动态Form)笔记 J2EE框架_笔记_b: 11-留言管理程序_使用Struts + DAO完成笔记 12-Struts + DAO分页笔记 16-...