easyui提交表单数据的时候如何防止二次提交

在前端提交数据的时候有时候可能会由于网络延迟等原因,我们在等待的时候会多次点击保存按钮,这可能会导致我们一次输入的数据多次提交,导致数据重复。最近在做项目的时候碰到了这个问题,先说一点,这个问题的解决方案有很多种,有的在前端解决,有的方案在后端解决,个人觉得能够在前段解决的最好在前段就解决,而且拿java来说,如果在后端解决,在高并发的情况下还要考虑线程安全的问题。最近接触的项目的前端是easyui,在此把解决方案做下记录。

不论是easyui还是别的框架,总体的一个思路是:当我们点击保存按钮之后把该按钮置为灰色,也就是不可点击状态,数据提交了再恢复可点击状态,这个思路个人认为算是解决二次提交最棒的方式,没有之一。

首先,项目的代码布局方式是把要提交的输入框等表单数据放在easyui的form里面,然后form表单放在一个dialog里面,接下来的问题就简单了。文章来源地址https://www.yii666.com/article/764158.html

dialog里面有buttons按钮可以使用,在具体使用的时候要给button按钮添加一个id,该按钮是easyui里面的linkbutton,easyui的API说明如下:网址:yii666.com

easyui提交表单数据的时候如何防止二次提交文章地址https://www.yii666.com/article/764158.html

点击dialog的保存按钮之后会触发dialog的handler函数,在该函数里面放上提交表单数据的方法,如下的代码方式:文章来源地址:https://www.yii666.com/article/764158.html

$('#XXX').form('submit');网址:yii666.com<

上面的代码会触发form表单执行提交操作。而Form表单有一个onSubmit事件,在提交之前触发该事件如果相关验证均没有问题,那么提交之前把保存按钮设置为不可点击状态,

关键代码就写在onSubmit事件里面,代码如下:

onSubmit:function(){

 var isvalidate=XXXXXX;//相关表单数据的验证

if(isvalidate){//验证成功,也就是说表单的数据符合要求

$('#保存按钮的id').linkbutton('disabled');
//在我的项目里面点击保存按钮之后对话框就关闭了,所以不涉及恢复保存按钮为可点击状态的情况,
//如果要恢复按钮的可点击状态具体再实现,但肯定是可以实现的
} }

本人的写的东西都是工作中的记录而已,语言组织方式主要只是为了让自己看懂,如果网友看到了有不懂得地方请见谅,欢迎提问。

版权声明:本文内容来源于网络,版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。文本页已经标记具体来源原文地址,请点击原文查看来源网址,站内文章以及资源内容站长不承诺其正确性,如侵犯了您的权益,请联系站长如有侵权请联系站长,将立刻删除

easyui提交表单数据的时候如何防止二次提交-相关文章

  1. ASP.NET MVC中在Action获取提交的表单数据方法总结 (4种方法,转载备忘)

  2. JSON编码格式提交表单数据详解

  3. easyui提交表单数据的时候如何防止二次提交

  4. strus2中获取表单数据 两种方式 属性驱动 和模型驱动

  5. 使用WebClient上传文件并同时Post表单数据字段到服务端

  6. 不使用BeanUtils,利用Java反射机制:表单数据自动封装到JavaBean

  7. 初学者易上手的SSH-struts2 02Action获取表单数据-通配符

    在上一章中,我们已经搭建好了struts2的一个开发环境,那么这一章就来做一个简单的登录功能,以及介绍和使用struts2里面一个重要的东西-通配符。第一步,在WebContent下面新建一个login.jsp的页面,里面使用form表单实现一个简单的登录页面。第二步:打开上一章中建好的LoginAc

  8. Spring MVC Ajax 嵌套表单数据的提交

    概述在一些场景里,某个大表单里常常嵌套着一个或若干个小逻辑块,比如以下表单里“设计预审”中包括了一个子模块表单“拟定款项”。在这种情况下该怎么去设计实体类以及表单呢?实体类的设计在设计实体类时最好的方式是“主模块包括了自己的字段,而子模块只通

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信图片_20190322181744_03.jpg

微信扫一扫打赏

请作者喝杯咖啡吧~

支付宝扫一扫领取红包,优惠每天领

二维码1

zhifubaohongbao.png

二维码2

zhifubaohongbao2.png