点击按钮,使用 ajax 获取数据,如何在数据到来之前防止重复点击

点击按钮,使用 ajax 获取数据,如何在数据到来之前防止重复点击?

var ajaxLock = true    //1.设置一个状态锁,默认状态不会被return
button.addEventListener('click',function(){
  if(!ajaxLock){
    return    //服务器还未返回数据,锁未打开点击无效直接return
  }

  ajax({
    ...
    ajaxLock = true   //3.得到数据后,恢复状态,可以继续点击发送请求
  })

  ajaxLock = false   //2.请求发送完成,在数据到来之前设为false,会被上面的验证直接return      
})
posted @ 2021-07-18 22:02  King-DA  阅读(128)  评论(0)    收藏  举报