jquery ajax 如何避免重复提交-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

jquery ajax 如何避免重复提交

2016-03-24 10:44:49 1668 1

之前的做法 就是把按钮给禁用掉,
突然 想起文本框里敲回车 还是会提交表单。
现在打算用一变量来标记是否已经点击了提交。
我想知道的是 还有没别的 更优雅的方法?

取消 提交回答
全部回答(1)
  • 小旋风柴进
    2019-07-17 19:12:12

    用一个变量加锁

    var lock = false;
    执行Ajax的事件起初处判断

    if (lock) {return;}
    在Ajax发送前

    lock = true;
    在Ajax返回或错误后的回调函数中

    lock = false;
    如果你觉得无效化按钮挺优雅的话,那可以把整个表单都无效化加上 disabled ,就不担心回车的问题了,嫌麻烦还有简单的。 写一个loading

    .loading {
      position: absolute;
      z-index: 10000;
      top: 0;
      left: 0;
      height: 100%;
      width: 100%;
      background: url(...) center center;
    }

    然后像上面的变量一样的,加锁时放入这个loading的标签,比如

    $('form').append($('div').addClass('loading'));
    回调后解锁时删除它

    $('form').find('.loadding').detach();

    0 0
相关问答

1

回答

jquery ajax 如何避免重复提交

2016-07-29 10:42:45 1721浏览量 回答数 1

1

回答

用 jquery ajax 实现点击图片提交form问题

2016-07-29 10:38:02 2082浏览量 回答数 1

1

回答

用 jquery ajax 实现点击图片提交form问题

2016-03-24 09:31:02 1597浏览量 回答数 1

1

回答

Struct2 自定义拦截器如何拦截Json的ajax请求 400 请求报错 

2020-05-30 22:55:39 406浏览量 回答数 1

1

回答

怎样测试post请求的ajax的url链接是否正确?

2016-05-27 08:18:47 2126浏览量 回答数 1

1

回答

JS中用JQuery的ajax批量请求URL

2016-05-25 10:37:28 2115浏览量 回答数 1

1

回答

通过ajax请求后台,为什么回调函数里面无法获取request中的值呢?

2016-03-26 08:15:58 4239浏览量 回答数 1

1

回答

ajax请求回调函数的问题。

2016-03-26 08:24:47 1668浏览量 回答数 1

1

回答

ajax请求返回数据保存为全局变量

2016-03-20 14:03:36 2645浏览量 回答数 1

1

回答

ajax请求spring mvc Controller返回的json中的引号被转义

2016-03-17 16:10:21 5955浏览量 回答数 1
2709
文章
6591
问答
问答排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载