加入收藏 | 设为首页 | 会员中心 | 我要投稿 平顶山站长网 (https://www.0375zz.cn/)- 分布式云、数据处理、媒体处理、图像分析、基础存储!
当前位置: 首页 > 综合聚焦 > 编程要点 > 语言 > 正文

jQuery怎样实现控制按钮禁用的功能?

发布时间:2022-02-22 13:44:48 所属栏目:语言 来源:互联网
导读:jQuery怎样实现控制按钮禁用的功能?控制按钮禁用的功能我们常在一些登录注册页面会使用到,例如发送登录验证码时,点击发送验证码之后,按钮被暂时禁用,5秒之后再取消禁用。下面我们就来看看这一需求怎样实现。 点击发送之后禁用按钮 5秒之后取消禁用,重
      jQuery怎样实现控制按钮禁用的功能?控制按钮禁用的功能我们常在一些登录注册页面会使用到,例如发送登录验证码时,点击发送验证码之后,按钮被暂时禁用,5秒之后再取消禁用。下面我们就来看看这一需求怎样实现。
  
     点击发送之后禁用按钮
 
     5秒之后取消禁用,重新发送
 
     代码如下:
 
<!DOCTYPE html>
<html lang="en">
 
<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <meta http-equiv="X-UA-Compatible" content="ie=edge">
  <title>Document</title>  
</head>
 
<body>
  <input type="text">
  <input type="button" value="发送">
  <script src="js/jquery-1.12.4.min.js"></script>
  <script>
    // 获取元素
    var $btn = $("input:button")
    // 添加按钮的点击事件
    $btn.click(function () {
      // 定义一个变量存储时间的数字
      var n = 5;
      // 让按钮被禁用
      // 替换按钮的文字内容
      $(this).prop("disabled",true).val(n + "s 后重新发送")
      // 每隔 1s 更改倒计时内容
      // 通过定时器进行每隔 1s 减时间效果
      var timer = setInterval(() => {
        n--;
        // 文字内容发生变化
        // 定时器内部的this指向的默认为 window
        $(this).val(n + "s 后重新发送")
        // 判断如果时间到了 0 ,就要停止定时器
        if (n <= 0) {
          clearInterval(timer)
          // 5s 结束后,需要让文字恢复 发送
          // 让按钮取消禁用          
          $(this).val("重新发送").prop("disabled",false)
        }
      },1000)
      
    })
    
  </script>
</body>
 
</html>

(编辑:平顶山站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读