zoukankan      html  css  js  c++  java
  • 验证码刷新、倒计时

    记录一下注册页面编写遇到的一些细节和坑。

    验证码刷新问题:

    <script>
        function refresh_captcha(){
            document.getElementById("captcha").src="/basic/verifycode/?"+Math.random();
        }
    </script>
    

    由于浏览器的缓存问题,如果两次都是同样的值(src=’/basic/verifycode/’),浏览器一般都不会刷新,因此这边用到了一个小技巧,改变提交的随机数。

    发送验证码倒计时

    <!DOCTYPE html>
    <html>
    <head>
    <script src="jquery.js"></script>
    <script type="text/javascript">
    $(function(){
    	$("#btn").click(function(){
    		invokeSettime($(this));
    	});
    });
    
    
    function invokeSettime(obj){
        var countdown=60;
        settime(obj);
        function settime(obj) {
            if (countdown == 0) {
                obj.attr("disabled",false);
                obj.text("获取验证码");
                countdown = 60;
                return;
            } else {
                obj.attr("disabled",true);
                obj.text("(" + countdown + ") s 重新发送");
                countdown--;
            }
            setTimeout(function() {
                        settime(obj) }
                    ,1000)
        }
    }
    
    </script>
    <body>
        <button id="btn" type="button">获取验证码</button>
    </body>
    </html> 
    

      

    a标签添加点击事件:

    <a href="javascript:void(0)" onclick="refresh_captcha()">
    

    这种方法是很多网站最常用的方法,也是最周全的方法,onclick方法负责执行js函数,而void是一个操作符,void(0)返回undefined,地址不发生跳转。而且这种方法不会像第一种方法一样直接将js方法暴露在浏览器的状态栏。

  • 相关阅读:
    leetcode 912. 排序数组
    leetcode 633. 平方数之和
    leetcode 1512. 好数对的数目
    leetcode 1822. 数组元素积的符号
    leetcode 145. 二叉树的后序遍历
    leetcode 11. 盛最多水的容器
    leetcode 28 实现strStr()
    leetcode 27. 移除元素
    leetcode 26. 删除有序数组中的重复项
    产品化思维之公式系统
  • 原文地址:https://www.cnblogs.com/zenan/p/10648327.html
Copyright © 2011-2022 走看看