代码之家  ›  专栏  ›  技术社区  ›  Italo Rodrigo

调用函数前解锁按钮

  •  -1
  • Italo Rodrigo  · 技术社区  · 3 年前

    我有javascript函数:

    <button class="btn btn-success" type="button" id="bt_gravar" onclick="bloqueia();" style="width: 100%;">Cadastrar <i class="fas fa-check"></i></button>
    
    function bloqueia(){
       $("#bt_gravar").attr('disabled', 'disabled');
       gravaAgenda();
       $("#bt_gravar").removeAttr('disabled');
    }
    

    gravaAgenda()是一个AJAX函数

    我想锁定按钮以避免用户双击。接下来是功能,解锁按钮。

    但它不起作用。我可以点击按钮更多次。

    有什么想法吗?

    1 回复  |  直到 3 年前
        1
  •  2
  •   Kinglish    3 年前

    延迟删除禁用的属性,直到从ajax中得到结果为止fn

    <button class="btn btn-success" type="button" id="bt_gravar" style="width: 100%;">Cadastrar <i class="fas fa-check"></i></button>
    
    $(document).ready( function() {
        $("#bt_gravar").click(function() {
           $("#this").attr('disabled', 'disabled');
           gravaAgenda();
        })
        
    }
    function gravaAgenda() {
      $.ajax({
        url: "test.php",
        method:'post',
        data:{}
      }).done(function() {
        $("#bt_gravar").removeAttr('disabled');
      });
    }