如何避免重复运行表单

 我来答
律平卉0id
2018-05-18 · TA获得超过4.6万个赞
知道小有建树答主
回答量:428
采纳率:75%
帮助的人:76万
展开全部
首先创建一个生成令牌的工具类,然后开始编写该工具类。
如何避免表单重复提交信息
我这里采用单例模式,单例模式是一种常用的软件设计模式。通过单例模式可以保证一个类只有一个实例并且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。单例模式需要满足三点:
如何避免表单重复提交信息
编写生成token的方法,这个工具类编写完成。生成令牌方法如下所示:
如何避免表单重复提交信息
在编写跳转到填写信息的页面方法时,调用token工具类创建令牌,并且放到session会话中。例如:
如何避免表单重复提交信息
页面的form表单如下,将存入session会话中的token令牌写到form表单中,一起提交。
如何避免表单重复提交信息
编写一个方法,验证用户是否重复提交了表单,重复提交表单返回true,否则返回false,分为3种情况判断用户是否重复提交表单。
1、如果用户提交的表单数据中没有token,则用户是重复提交了表单
2、如果当前用户的Session中不存在Token(令牌),则用户是重复提交了表单
3、存储在Session中的Token(令牌)与表单提交的Token(令牌)不同,则用户是重复提交了表单。
具体代码如下:
如何避免表单重复提交信息
编写提交方法,首先调用步骤6的方法进行验证,如果非重复提交,那么移除session中的token令牌,执行下边的操作。
如何避免表单重复提交信息
还可以通过js控制,当重复提交时点击提交按钮无效,定义一个变量标识是否重复提交,通过这个变量的值的变化进行判断,是否触发提交事件。例如:
如何避免表单重复提交信息
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式