怎么防止jquery ajax 的重复提交呢

怎么防止jquery ajax 的重复提交呢怎么防止jquery ajax 的重复提交呢怎么防止jquery ajax 的重复提交呢怎么防止jquery ajax 的重复提交呢怎么防止jquery ajax 的重复提交呢,主要是我这边还要拦截这个ajax请求,配合登录,有没有将所有的请求放到一个request队列里面 ,最后发送的时候 只发送最后一条

0

6个回答

客户端上,提交以后就把按钮禁用,直到服务器返回再启用。
服务器上,同一个请求id处理过,放入session,再请求,判断下直接忽略。

2

要不要搞这么复杂啊 直接搞个loading()遮罩 搞完loaded()下不就好了么

1

var requestSent = false;

jQuery("#buttonID").click(function() {

if(!requestSent) {
requestSent = true;

  jQuery.ajax({
     url: "http://example.com",
     ....,
     tim......<br/><strong>答案就在这里:</strong><a target='_blank' rel='nofollow' href='http://blog.csdn.net/u012941811/article/details/43561007'>防止jquery ajax 重复提交</a><br/>----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。
0

再绑定一个单击事件,当单击按钮后,使按钮不可用

0

点了一下之后,立刻就禁用按钮,即可。

0
dcxy0
Q544471255 后台也可判断一下状态。
接近 4 年之前 回复

用个全局变量记录提交状态,提交前判断是否为true,是true就不提交,ajax提交完毕后设置为false

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
Jquery的$.ajax防止重复提交的方法
1、第一种,对于onclick事件触发的的ajax可以采用如下方法: n即在beforeSend中使点击按钮不可用,ajax结果返回后置为可用 $.ajax(n {n type: 'POST',n url: APP+'?m=Shopping&a=ajaxSubmitorder&sid='+sid+'&src='+src,n cache:false,
$.ajax防止多次点击重复提交的方法
第一种:使用$.ajaxPrefilter( [dataTypes], handler(options, originalOptions, jqXHR) ) 方法:nn$.ajaxPrefilter()方法 :是对全局所有的ajax请求有效,在所有的ajax请求之前,会对每一个请求统一做一些处理,可以去设置ajax的选项,也可以对现有的ajax选项进行更改;nn接收两个参数:nndataTypes...
Ajax分段防止用户重复提交的做法
适用场景:    例如购物系统,用户创建订单后,F5刷新页面,就会多次声称订单。解决方法:    利用Ajax分段提交用户创建订单时,利用Ajax提交到后台后台反馈OK之后,根据反馈回来的订单ID到后台查询订单信息并反馈给用户,然后进行支付...
jquery Validate 解决表单重复提交
一、说明问题:使用jquery Validate remote验证表单导致表单数据重复提交网上解决表单重复提交的方式各式各样,点开一看js,html代码一大坨。于是自己研究了一下。只需要写一个方法就行了。直接贴代码。我这里是某个分类的唯一性验证。二、代码1.自定义的方法。jQuery.validator.addMethod(&quot;checkName&quot;, function(value, element)...
如何全局防止ajax重复提交
在开发中一定有这种情况:一个简易的需求,点一个按钮,则向服务器请求资源,不作处理时,多次点击后会有很多个请求在等待。最粗暴的解决方式是点一次就将按钮disable掉,比如$(&quot;input[type=submit]&quot;).attr('disabled',false)但这种形式缺点也很多,还有稍微优雅一点的方式完全由JS来控制,就是使用一个变量来保存状态:var post_flag = false; n...
ajax同步防止重复提交的两种方法
1.设置变量法:nnnvar _thisCondition = true;n$(&quot;button&quot;).click(function() {n if (!_thisCondition) return false;n _thisCondition = false;n setTimeout(function (){_thisCondition = true; }, 60000);nn var url = ...
jquery a标签不可点击,绑定bind/解除unbind点击,ajax防止重复提交
点击nn绑定n解除nnnnnnn n//点击操作n$("#dianji").bind("click",function(){ n test($(this));n}); nnfunction test(obj){n alert( 11111);n}nn$("#bangding").bind("click",function(){ n var obj = $("#dianji");n obj.
ajax submit 重复提交问题
在使用ajaxfrom表单自动提交保存数据时,当提交后不关闭页面直接clear表单进行第二次保存时,数据会重复保存。rn$('#addForm').submit();rn第一次正常,第二次提交两次,第三次提交三次… 以此类推rnrnrn未找到针对自动提交的解决方法,将自动提交改成手动的提交之后解决rn $.ajax({ n url: basePath+'/functionName/l
JSP利用session ajax 防止表单重复提交
案例回顾rn当点击页面上的一个按钮触发表达提交的方式有多种rnrnrnrnrnrnrnrnrn当点击按钮 提交 form 表单,如果网络延迟,rn1、此刻我重复刷新页面。会请求多次action地址。rn2、此刻如果我点击后退,也会请求多次actionrn3、此刻如果我重复点击按钮,也会多次 action(废话)rnrnrn如何 解决 刷新页面,前进后退 的方式 导致重复提交的问题rn最简单的方式是
页面按钮防止ajax重复提交
这两天在做一个项目,页面交互非常多,到处都是ajax,测试时发现点击按钮是很有可能重复请求ajax,看网上说加锁的方法,不过我也有一个方法,不知道别人用过没,废话不说,我用了CSS中的pointer-events属性,直接上JS代码吧;` var formyAjax = false;n function formy(self) {n $(".getyaoshi").css(
ajaxsubmit自动重复提交问题 已解决
var formdata = $('#Form1').serialize();n$.ajax({n type: 'post', // 提交方式 get/postn url: 'commodity/searchData', // 需要提交的 urln data: formdata,n success: function(data) {n $('#show').html(data);n }
AJAX防重复提交的办法总结
导读:最近的维护公司的一个代理商平台的时候,客服人员一直反映说的统计信息的时候有重复数据,平台一直都很正常,这个功能是最近新进的一个实习生同事写的功能,然后就排查问题人所在,发现新的这个模块的AJAX提交数据的时候没有设置防重复提交限制,所以今天把这个问题记录下来供AJAX新手童鞋学习,也防止以后再出现这样的问题。ajax诠释ajax 的全称是Asynchronous JavaScript and
重复提交,加遮罩层
function ajaxLoading(msg,msgMaginTop){n //信息提示n var default_msg = '正在处理,请稍后。。。';n //信息布局位置向上内边距n var default_msgMaginTop= -45;n var _msg = '';n var _msgMaginTop=0;n // 判断参数n if (msg == 'undefined') {n
ajax防止表单重复提交
1.禁用按钮n2.使用one,只执行一次n3.设定flagn<script type="text/javascript">n$(function(){n var flag=1;n function ajaxTest(){n if(flag){n $.ajax({n url: "test.php",
Jquery 实现表单提交按钮变灰,防止多次点击提交重复数据
表单提交时候我们应该控制提交按钮,不能点击多次进行数据的重复提交。要不然就会有冗余的重复的数据在系统中,造成系统出现数据垃圾。njQuery很简单的就可以实现对表单提交按钮控制,下面就是相关的例子和代码。
关于ajax提交表单,重复提交解决方法
今天做了一个扣除用户金额,解决重复提交问题,这里用了layer,您可以注释。rn/*提交表单*/rn var lock = true; // 锁住表单    1.这里定义一把锁rn function submit(){rnrn  if(!lock){    // 2.判断该锁是否打开,如果是关闭的,则直接返回rn   return false;rn  }rn  lock = false  //3.
ajax 防止重复提交数据
 防止数据重复提交nn在实际项目开发中,提交表单时常常由于网络或者其原因,用户点击提交按钮误认为自己没有操作成功,进而会重复提交按钮操作次数,如果页面前端代码没有做一些相应的处理,通常会导致多条同样的数据插入数据库,导致脏数据的增加。要避免这种现象,在$.ajax请求中的beforeSend方法中把提交按钮禁用掉,等到Ajax请求执行完毕,在恢复按钮的可用状态。nnn$.ajax({n //...
ajax异步请求防止重复提交的方法
JS通过ajax发起异步请求时,经常会出现一个按钮快速多次点击时,请求进行了多次提交,可能导致很多不必要的问题出现,比如写入某些脏数据等。n  此处针对ajax发起请求多次提交的问题进行JS代码处理的简单方法有如下两种:n1、定义lock机制:nn//提交nvar lock = true;//防止重复提交定义锁n$('.saveRemark').click(function(){nv
ajax 避免表单重复提交
najax beforeSend 避免表单重复提交nnnn $.ajax({n url: '/admin/plan/add',n type: 'post',n data: $(&quot;#planForm&quot;).serialize(),n async:false,n ...
jquery防止重复提交表单
重复触发就是防止用户重复点击提交数据了,我们一般都是点击之后没反应会再次点击了,这个不但要从用户体验上来做好,还在要js或php程序脚本上做好,让用户知道点击是己提交服务器正在处理,下面我就整理从脚本上来处理此重复触发的问题。n  很多时候事件会被快速重复触发,比如 click,这样就会执行两次代码,造成很多后果。比如说添加表单时,连续多次点击会出现一下添加多个数据的情况。现在有比较多的解决方法
ajax防止多次点击重复提交
多次点击提交按钮的时候重复提交的问题n解决方法很简单,当点击提交按钮的时候,把这个提交这个处理函数给解绑掉,请求完成的时候在绑定回来,如果绑定的是有名函做法相对简单类似如下代码:nnfunction clickHandler(){  n        $(this).unbind('click', clickHandler);  n        $.ajax({
Ajax环境下表单防重复、外部提交实现方案记要
背景:rnjs lib: Ext 3.3.0,未使用 struts、Spring MVC;rn rn所有的表单都由 Ext js 方法生成(即非传统 http form 形式, http 源代码中无 form 元素),后台 http request -&amp;gt; action 的处理机制是和 struts、Spring MVC 的实现相仿。rn rn方案核心:rn通过 token 机制来防止表单重复...
ajax发送数据防止过快点击重复提交
var havepost = false;nfunction postcontent(form_data,islayer){n if(check_login()!==true){ //检查用户登录状态n return false;n }n var that = ueditor;n var url = posturl;n if(pid&amp;gt;0){n url += '?pid=...
SpringMvc框架中ajax防表单重复提交
SpringMvc框架中ajax防表单重复提交nn SpringMVC 中如果使用了knockoutJs前端开发框架,在表单提交的时候只需要把ViewModel中的数据以Ajax提交的方式提交到后台进行处理,这时候我们需要在前端做防止重复提交。这种防止重复提交只能防止在页面未刷新立即进行的提交,虽然不能够解决防止重复提交的所有情形,但是结合后端验证,还是可以解决一部分问题。nn       后端防...
jquery表单防重复提交
网站中防止表单重复提交是一个比较普遍的需求,解决办法很多种rn有利用session和cookie即生成个一次性token放在表单隐藏域防重复提交rn有利用js设置变量锁定rn这里以设置表单失效来实现rnrnrnnnn 注册n n n n n .submit-btn{ color: #fff;background-color: #7d61dd;}n .disabled{n background-
jquery ajax异步获取数据,防止重复获取
一个onclick事件,当发送一个ajax请求时,如果该请求没有返回,则不进行 下一次的请求。该问题的处理非常类似多线程中对资源共享共享的处理。下面代码中 isSended 标志类似多线程中的锁rn rn代码取自jxwpgsh 中站内搜索中查询单位的结果列表页面rn rn rnvar isSended=false;//类似多线程中的锁rnfunction getProject(obj,compan...
ajax请求如何避免表单重复提交
ajax请求中,为避免表单重复提交,点击提交表单按钮后,让按钮失效,然后回调方法执行后再将按钮激活
ajax 防止按钮重复提交
防止用户误操作,重复提交
Form和$.ajax.post重复提交问题解决记录
有问题的登录页面<form id="submitFrom" method="post" action="login_login">//**注意method和action**n <div class="form-group has-feedback">n <input type="text" name="username" id="username" class="form-con
jQuery发送ajax请求,一次点击重复提交
问题描述:rn前台页面rn&amp;lt;input type=&quot;button&quot; class=&quot;inputbutton&quot; id=&quot;btnlogin&quot; value=&quot;登录&quot; /&amp;gt;rnrnrnshow.js:rn$(&quot;#btnlogin&quot;).click(function(){rn $.ajax( { rn url : &quot;LoginAction&quot;, rn type
JQUERY 防止快速双击重复提交
最近项目发现用户注册了两次,相差时间ms,肯定是前端页面重复提交了,于是解决如下:一、one() 方法定义和用法 one() 方法为被选元素附加一个或多个事件处理程序,并规定当事件发生时运行的函数。 当使用 one() 方法时,每个元素只能运行一次事件处理器函数。语法$(selector).one(event,data,function);1使用示例$('.register_btn').unbin...
EasyUI 防止A标签按钮重复提交
关于如何防止A 标签按钮重复提交解决方案:rnExportSumReportrnfunction ExportSumReport() {nn $("#btnExport").css("color", "#CCC");n $('#btnExport').linkbutton('disable');n setTimeout('$("#btnExport").l
struts2 防止重复提交
使用struts2防止用户刷新页面重复提交,做项目经常会用到。rn   rnstruts.xml配置文件如下:rn&amp;lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot; ?&amp;gt;rn&amp;lt;!DOCTYPE struts PUBLICrn &quot;-//Apache Software Foundation//DTD Struts Configuration 2.0//EN...
jquery ajax提交表单时用进度条防重复提交
n$.ajax({rnurl : requrl,rntype : &quot;post&quot;,rndata : saveData,rnbeforeSend:function(){rn$.messager.progress({rn     title: 'test',rn     msg: '正在提交',rn     text:'',             //进度条上显示的内容,不写这个属性就是10%-20%...
js实现提交表单的遮罩效果,防止表单重复提交
下面代码设定了5秒后取消遮罩,使用时可以修改代码,手动取消rnnn n n n n n n testn n .mask { n position: absolute; n top: 0px; n filter: alpha(opacity=60); n ba
防止form表单重复提交
 nn通常情况,出现from表单重复提交的情况包括:nn(1)点击提交按钮两次。nn(2)点击刷新按钮。nn(3)使用浏览器后退按钮重复之前的操作,导致重复提交表单。nn(4)使用浏览器历史记录重复提交表单。nn(5)浏览器重复的HTTP请求。nn nn nn问题的解决方案:nn1、js方式nn1.1、在第一次点提交后将button设置为disable。nnnvar button = docume...
html+springMVC的拦截器token配置--解决ajax表单重复提交的问题
//定义注解类nimport java.lang.annotation.ElementType;nimport java.lang.annotation.Retention;nimport java.lang.annotation.RetentionPolicy;nimport java.lang.annotation.Target;nn@Target(ElementType.METHOD)n@
防止button重复提交
为了防止button重复提交,现在已经不推荐锁表的操作方式了,直接让button变成disable就可以了,代码如下:n<button style="display: block; width: 200px; height: 30px; margin: 0 auto;" id="btnWorth" onclick="startSetworth()">开始计算</button>n 以下是js代码:
Spring MVC防止重复提交最佳实践
rn防止表单重复提交是个老生常谈的问题,有些框架层面已经有实现,比如Struts2中的token,但Spring MVC中并未找到相应的功能,只能自己实现。rn rn网上搜索“Spring MVC防止重复提交”,会有一大推的案例实现,但多数都存在以下几个问题或者不便:rnn防止重复提交页面需要添加隐藏域,类似&amp;lt;input type=”hidden” name=”token” value=”$...
防ajax重复提交
    经常在工作中测试人员发现一些重复提交的问题,js的ajax重复提交尤为常见(几乎全是)。虽然处理办法有多种,但一般都只是前台js做处理。且这种处理对于个要数据提交处都要做逻辑判断来去防止,如果有多处这种请求不仅工作量大且而且不利于统一管理。rn rn    介绍一种处理这种问题的一个办法,虽不是最好最简结的但算是比较好管理且减少工作量的。rn rn         1,首先js上做下规范,...
文章热词 jQuery学习 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 java怎么学习呢 大数据培训呢