Javascript实现表单检验(如注册界面)

Javascript实现表单检验(以注册界面为例)


正如我们所见到的,好多网页都有注册界面,在注册界面中,最常见的即是包括用户名、密码、请重复输入密码和一个“注册”按钮,今天我们就举例实现一下该界面。

要求:
1.用户名不为空,且用户名不能超过12个字符;
2.密码不为空,且密码不能超过15个字符;
3.密码和重复输入的密码必须一致;
4.如果发生错误,显示错误并聚焦到错误位置;

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>注册</title>
        <script>
            function $(id){
                return document.getElementById(id);
            }
            function test(){
                var user_name = $("user_name").value;
                var password = $("password").value;
                var re_password = $("re_password").value;
                if(user_name.length==0){
                    $("msg").innerHTML = "用户名不能为空!";
                    $("user_name").focus();
                    return false;
                }
                if(user_name.length>12){
                    $("msg").innerHTML = "用户名不能超过12个字符!";
                    $("user_name").focus();
                    return false;
                }

                if(password.length==0){
                    $("msg").innerHTML = "密码不能为空!";
                    $("password").focus();
                    return false;
                }
                if(password.length>15){
                    $("msg").innerHTML = "密码不能超过15个字符!";
                    $("password").focus();
                    return false;
                }

                if(password!=re_password ){
                    $("msg").innerHTML="错误!密码不一致!";
                    $("re_password").focus();
                    return false;
                }
                console.log("注册成功!");
                return true;
            }
        </script>
    </head>
    <body>
        <br />
        <span id="msg" style="color: red;"></span>
        <form onsubmit="return test()">
            <input placeholder="请输入用户名" id="user_name" /><br />
            <input placeholder="请输入密码" type="password" id="password"/><br />
            <input placeholder="请再次输入密码" type="password" id="re_password"/><br />
            <input type="submit"  value="注册" />
        </form>
    </body>
</html>

注:方法不唯一,此方法仅作参考。

下面对该代码中的一些点进行讲解:
1. idCdefine,使使document.getElementById() ( i d ) 的 作 用 类 似 于 C 语 言 中 的 d e f i n e , 将 所 使 用 的 功 能 或 语 句 定 义 为 一 个 符 号 或 字 符 串 , 极 大 程 度 的 简 化 代 码 , 你 也 可 以 不 使 用 该 方 法 , 用 d o c u m e n t . g e t E l e m e n t B y I d ( ) 还 原 ();
2. 定义的对象必须加.value使其为获取的输入的值,而下面聚焦时,需要改用focus;
3. 在每个if语句中,最好再加一个返回值,提高代码的运行效果,innerHTML的作用是在浏览器页面中显示;
4. 在整个函数test()的最后,若return false,则为取消提交,若return true,则为正常提交;

大家可以自己尝试一下,部分页面如下:
直接运行代码如图:
这里写图片描述
不输入任何值,直接点击注册,效果如图:
这里写图片描述
全部按要求输入后,会返回最初的样子,是因为没有指定成功输入后跳转的界面,自己设置即可。

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值