javascript - 在 API 调用期间禁用按钮

标签 javascript jquery

我试图在单击按钮时禁用该按钮,同时运行调用 API 的函数,完成后我想重新启用该按钮。

我尝试了一些变体,例如 attr()/removeAttr(),以及下面带有 $(this)< 的变体$('#miss'),但奇怪的是,当我只有禁用行时,按钮会禁用,当我先禁用后启用,例如按钮下方的代码中永远不会禁用。我错过了什么?

$('#miss').click(function() {
  $(this).prop('disabled', true);

  registerShot('miss');

  $(this).prop('disabled', false);
});

最佳答案

如果您的 registerShot 函数编写没有问题,这将对您有所帮助:

$('#miss').click(function() {
  let missButton = $(this);
  $(missButton).prop('disabled', true);

  registerShot('miss')
    .then(function(res) {
      $(missButton).prop('disabled', false);
    });

});

关于javascript - 在 API 调用期间禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50432810/

相关文章:

javascript - insertRule 不插入样式元素

JavaScript:函数在没有 alert() 的情况下无法工作

jquery - 回溯代码问题(DIV 背景)

javascript - IndexedDB 未保存在数据库中

javascript - 在 div 的情况下,如何先增加高度,然后增加宽度?

javascript - 单击时 HTML/Javascript/Bootstrap 无法隐藏按钮

Javascript函数声明 Bison 语法reduce/reduce错误

javascript - Firefox 插件 : contentaccessible=yes

jquery - 仅在出现弹出窗口时加载 img

jquery - 使用 JQuery 在水平滚动页面中水平居中内容