防止重复发送ajax请求的解决方法

Ajax技术不必刷新整个页面,只对页面的局部进行更新,在前端各方面应用都很多。

关于防止重复发送ajax请求,一般是重复点击提交按钮导致重复提交,网上也有很多解决方法,这里写一下我自己用的一个方法。

var postFlag = false//定义一个变量为false

function changeInfo(url,data) {

  if (postFlag) {

    return false//如果正在提交则结束

  }else {

    postFlag = true//标记当前状态为正在提交

    $.ajax({

      type: "post",

      url: url,

      data: data,

      success: function(result) {

        if (result.errorCode == 0) { //我这里设置result.errorCode == 0为传送成功或获得想要的值

           //返回正确值后的代码写在这

        }else{

            postFlag = false; //传送失败或不是想要的值后,将postFlag重归为false

        }

      },

      error: function(error) {

        postFlag = false//这个的原理也是一样,发送错误后重归为false

      }

    });

   }

 }

这样你重复点击提交按钮就不会出现重复提交的问题了 

猜你喜欢

转载自blog.csdn.net/wz_road/article/details/81174287