3-9 请老师检查

来源:3-9 编程练习

慕妹6205103

2020-07-13 16:32:25

<!DOCTYPE html>

<html>

<head>

    <meta charset="UTF-8">

    <title>Document</title>

    <style type="text/css">

        form{

            width:300px;

            background:pink;

            text-align: center;

            padding:30px 0;

            margin:100px auto;

        }


    </style>

</head>

<body>

    <form id="form">

        <p><input type="text" name="name" id="username" placeholder="请输入账户名"></p>

        <span></span>

        <p><input type="text" name="chinaName" id="chinaName" placeholder="请输入中文名"></p>

        <span></span>

        <p><input type="email" name="eamil" id="email" placeholder="请输入邮箱"></p>

        <span></span>

        <p><input type="submit" value="注册" id="submit"></p>

    </form>

    <script type="text/javascript">

        var spans=document.getElementsByTagName("span");

        var username=document.getElementById("username");

        var chinaName=document.getElementById("chinaName");

        var email=document.getElementById("email");

        var submit=document.getElementById("submit");

        var input1=false;

        var input2=false;

        var input3=false;


        //用户名

        username.onfocus = function(){

            spans[0].innerHTML = "请输入6-18位字母、数字或下划线"

        }

        username.onblur = function () {

            var reg = /^\w{6,18}$/;

            if (this.value == '') {

                spans[0].innerHTML = "请输入6-18位字母、数字或下划线";

            }else {

                if (!reg.exec(username.value)) {

                    spans[0].innerHTML = "格式不正确";

                } else {

                    spans[0].innerHTML = "";

                    input1 = true;

                }

            }

        }

        //中文名

        chinaName.onfocus = function(){

            spans[1].innerHTML = "请输入中文名";

        }

        chinaName.onblur = function () {

            var reg = /^[\u4e00-\u9fa5]{2,5}$/;

            if (this.value == '') {

                spans[1].innerHTML = "请输入中文名";

            }else {

                if (!reg.exec(chinaName.value)) {

                    spans[1].innerHTML = "格式不正确";

                } else {

                    spans[1].innerHTML = "";

                    input2 = true;

                }

            }

        }

        //邮箱

        email.onfocus = function(){

            spans[2].innerHTML = "请输入邮箱";

        }

        email.onblur = function () {

            var reg = /^\w+@\w+\.[a-zA-Z_]{2,4}$/;

            if (this.value == '') {

                spans[2].innerHTML = "请输入邮箱";

            }else {

                if (!reg.exec(email.value)) {

                    spans[2].innerHTML = "格式不正确";

                } else {

                    spans[2].innerHTML = "";

                    input3 = true;

                }

            }

        }

        submit.onclick = function () {

            if (input1 == false || input2 == false || input3 == false) {

                alert('验证失败');

            }else{

                alert('验证成功');

            }

        }

    </script>

</body>


</html>


写回答

1回答

好帮手慕言

2020-07-13

同学你好,测试同学提供的代码,第一次输入正确的内容,再修改为错误的,点击注册,会提示注册成功,如下:

http://img.mukewang.com/climg/5f0c2c9f094b3bb804450335.jpg

原因是在验证时匹配正确了之后,就把标识符修改为了true,在验证时匹配错误之后没有修改为false,以第一个为例,修改如下

http://img.mukewang.com/climg/5f0c2cf9095e269507710371.jpg

如果我的回答帮到了你,欢迎采纳,祝学习愉快~

0

0 学习 · 14456 问题

查看课程

相似问题