稍等片刻,正在加载中...

Javascript之操作

控制输入框只能输入数字

应用:主要应用在手机号输入框中。

html代码:

<input type="text" name="mobile" maxlength="11" minlength="11" autocomplete="off" placeholder="请输入手机号码" onkeyup="chekNum(this)">

js代码:

function chekNum(obj) {
    obj.value = obj.value.replace(/[^\d.]/g, "");
    obj.value = obj.value.replace(/^\./g, "");
    obj.value = obj.value.replace(/\.{2,}/g, ".");
    obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
    if (obj.value.length > 11) {
        obj.value = obj.value.substring(0, 11);
    }
}

60秒倒针时

应用:主要应用于获取手机号验证码。

html代码:

<button class="code-btn send_code" type="button" disabled="disabled" onclick="code(this)">发送验证码</button>

js代码:

function code(obj) {
    let count = 60,
    timer = null;
    if (timer == null) {
        timer = setInterval(function() {
            count--;
            $('.send_code').text(count + " 秒").attr('disabled', 'disabled');
            if (count <= 0) {
                clearInterval(timer); //停止定时
                $('.send_code').text("获取验证码");
                clearInterval(timer);
                $(".send_code").removeAttr("disabled");
            }
        },
        1000);
    }
}

实战一

通过上面的两个例子,下面我们来实战一个功能需求:
当输入框输入到11位手机号时,发送验证码的按钮高度起来。如果没有输入框没有达到11位的话,发送验证码的按钮会处于一直禁用状态。

html代码:

<input type="text" name="mobile" maxlength="11" minlength="11" autocomplete="off" placeholder="请输入手机号码" onkeyup="chekNum(this)">
<button class="code-btn send_code" type="button" disabled="disabled" onclick="code(this)">发送验证码</button>

jq代码:

$("#mobile").focus(function() {
    time = setInterval(function() {
        var value = $("#mobile").val();
        if (value.length == 11) {
            $(".send_code").removeAttr("disabled");
        }
    },
    500);
}).blur(function() {
    console.log("clearInterval");
    clearInterval(time);
})

在使用 jq 的时候请自行引入jq。在这里我只拿出最重要的代码。

键盘回车事件

$(document).keydown(function(event) {
    if (event.keyCode == 13) {
        console.log('键盘回车事件');
    }
});

跳转页面

原来的窗口中直接跳转

window.location.href="你所要跳转的页面";
posted @ 2020-10-15 16:40  一切皆往事  阅读(88)  评论(0编辑  收藏  举报