表单重复提交解决方法
2017-03-15 13:06
183 查看
因为网络原因或者程序原因造成表单提交慢,用户多次提交的问题解决方法:
1、页面上加限制,当用户点击按钮时,清除onclick事件,直到页面返回信息后再把事件加上去
我原来使用的是这个方法,但是没有起到作用,还得需要后台来做限制。
2、后台思路步骤: 只有service实现中才会提交事物,如果用户重复提交,需要做到让事物进行回滚就行了。
在Controller中我新增和修改页面全部是弹窗页面。
a、在初始化页面时使用UUID生成一个页面标示放到页面上作为一个隐藏域存放
b、把这个页面标示同时存放进session中。
c、 表单提交tokenId和session中的相比较,如果session中存在就表示没有重复提交,这时候清空session。
如果不存在就表示重复提交?抛出一个异常让事物回滚。
需要把判断的语句放在业务逻辑(service实现类)最后进行。
粘贴部分代码:
Controller控制器中增加:
![](https://img-blog.csdn.net/20170315130333887?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYjY5NDg5NzMz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
页面增加:
![](https://img-blog.csdn.net/20170315130423927?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvYjY5NDg5NzMz/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
service中增加判断
1、页面上加限制,当用户点击按钮时,清除onclick事件,直到页面返回信息后再把事件加上去
我原来使用的是这个方法,但是没有起到作用,还得需要后台来做限制。
2、后台思路步骤: 只有service实现中才会提交事物,如果用户重复提交,需要做到让事物进行回滚就行了。
在Controller中我新增和修改页面全部是弹窗页面。
a、在初始化页面时使用UUID生成一个页面标示放到页面上作为一个隐藏域存放
b、把这个页面标示同时存放进session中。
c、 表单提交tokenId和session中的相比较,如果session中存在就表示没有重复提交,这时候清空session。
如果不存在就表示重复提交?抛出一个异常让事物回滚。
需要把判断的语句放在业务逻辑(service实现类)最后进行。
粘贴部分代码:
Controller控制器中增加:
页面增加:
service中增加判断
相关文章推荐
- php 解决表单重复提交实现方法介绍
- IE 下Enter提交表单存在重复提交问题的解决方法
- 常见表单重复提交问题整理及解决方法-点击链接加入群【农产品一体化解决方案】:https://jq.qq.com/?_wv=1027&k=49BAOCe
- [Jsp]防止页面表单重复提交的解决方法
- 解决php表单重复提交实现方法
- 使用Jquery Validation插件防止重复提交表单的解决方法
- php 解决和避免form表单重复提交的方法
- php 解决和避免form表单重复提交的方法
- FORM表单重复提交问题解决方法
- php 解决和避免form表单重复提交的方法
- 防止页面表单重复提交的解决方法
- php 解决和避免form表单重复提交的方法
- 【PHP解决表单重复提交实现方法介绍】
- 常见表单重复提交问题整理及解决方法
- 页面按F5刷新,避免表单重复提交的解决方法
- 解决表单重复提交实现方法
- 常见表单重复提交问题整理及解决方法
- 关于防止表单表达重复提交的几个解决方法
- 解决php表单重复提交实现方法
- php 解决和避免form表单重复提交的方法