HTML + CSS + JavaScript 实现注册页面信息验证 详细教程(表单验证)

这篇具有很好参考价值的文章主要介绍了HTML + CSS + JavaScript 实现注册页面信息验证 详细教程(表单验证)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

>>> 本文介绍使用HTML + CSS + JavaScript 实现注册页面信息验证的详细方法。完整代码见文章末尾。

要求

创建一个注册页面,如下图。

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

然后再对注册信息进行判断,判断其是否符合要求。(如:密码6-12位字符,不能有空格等)

图片素材如下:

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

注册页面的整个框架

注册页面框架分析

页面内容主要分为三个部分:

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

我们可以使用三个块标签,可以将这三个部分分别放到每个块标签中。

注册页面框架的实现

第一部分:两个段落文本

<!-- 左边部分 -->
<div class="rg_left">
    <p>新用户注册</p>
    <p>USER REGISTER</p>
</div>

第二部分:一个表单

<!-- 中间部分 -->
<div class="rg_center">
    <!-- 定义表单 form -->
    <form action="#" method="post">
        <!-- 定义一个表格 -->
        <table>
            <!-- 表格第一行有两个单元格:用户名 + 输入用户名信息区域 -->
            <tr>
                <!-- 定义一个标签:用户名 -->
                <td class="td_left"><label for="username">用户名</label></td>
                <!-- 定义输入用户名信息的框框 -->
                <td class="td_right"><input type="text" name="username" id="username" placeholder="请输入用户名"></td>
            </tr>

            <!-- 表格第二行有两个单元格:密码 + 输入密码区域 -->
            <tr>
                <!-- 定义一个标签:密码 -->
                <td class="td_left"><label for="password">密码</label></td>
                <!-- 定义输入密码的框框 -->
                <td class="td_right"><input type="password" name="password" id="password" placeholder="请输入密码"></td>
            </tr>

            <!-- 表格第三行有两个单元格:邮箱 + 输入邮箱区域 -->
            <tr>
                <!-- 定义一个标签:邮箱 -->
                <td class="td_left"><label for="email">Email</label></td>
                <!-- 定义输入邮箱的框框 -->
                <td class="td_right"><input type="email" name="email" id="email" placeholder="请输入邮箱"></td>
            </tr>

            <!-- 表格第四行有两个单元格:姓名 + 输入姓名区域 -->
            <tr>
                <!-- 定义一个标签:姓名 -->
                <td class="td_left"><label for="name">姓名</label></td>
                <!-- 定义输入姓名的框框 -->
                <td class="td_right"><input type="text" name="name" id="name" placeholder="请输入姓名"></td>
            </tr>

            <!-- 表格第五行有两个单元格:手机号 + 输入手机号码区域 -->
            <tr>
                <!-- 定义一个标签:手机号 -->
                <td class="td_left"><label for="tel">手机号</label></td>
                <!-- 定义输入手机号码的框框 -->
                <td class="td_right"><input type="text" name="tel" id="tel" placeholder="请输入手机号"></td>
            </tr>

            <!-- 表格第六行有两个单元格:性别 + 选择性别的按钮 -->
            <tr>
                <!-- 定义一个标签:性别 -->
                <td class="td_left"><label>性别</label></td>
                <!-- 定义两个选择按钮:一个按钮"男",一个按钮"女" -->
                <td class="td_right">
                    <input type="radio" name="gender" value="male"> 男
                    <input type="radio" name="gender" value="female"> 女
                </td>
            </tr>

            <!-- 表格第七行有两个单元格:出生日期 + 选择出生日期控件 -->
            <tr>
                <!-- 定义一个标签:出生日期 -->
                <td class="td_left"><label for="birthday">出生日期</label></td>
                <!-- 定义选择出生日期控件 -->
                <td class="td_right"><input type="date" name="birthday" id="birthday"></td>
            </tr>

            <!-- 表格第八行有两个单元格:验证码 + (输入验证码区域 + 验证码图片) -->
            <tr>
                <!-- 定义一个标签:验证码 -->
                <td class="td_left"><label for="checkcode" >验证码</label></td>
                <!-- 定义输入验证码的框框 -->
                <td class="td_right"><input type="text" name="checkcode" id="checkcode" placeholder="请输入验证码">
                    <!-- 验证码图片 -->
                    <img id="img_check" src="img/verify_code.jpg">
                </td>
            </tr>

            <!-- 表格第八行有一个单元格:注册按钮 -->
            <tr>
                <!-- 定义一个提交按钮 -->
                <td colspan="2" align="center"><input type="submit" id="btn_sub" value="注册"></td>
            </tr>
        </table>
    </form>
</div>

第三部分:登录/有账号

<!-- 右边部分 -->
<div class="rg_right ">
    <p>已有账号?<a href="#">立即登录</a></p>
</div>

三个部分效果如下:

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

对这三个部分和页面背景,用CSS样式进行修饰:

/* 选择body标签,设置背景 */
body {
    background: url("./img/register_bg.png");
}
/* 为内容部分添加一个方框 */
.rg_layout {
    width: 900px;
    height: 500px;
    border: 8px solid #EEEEEE;
    background-color: white;
    /*让div水平居中*/
    margin: auto;
}
/* 将内容分为三个部分:左、中、右 */
.rg_left {
    float: left;
    margin: 15px;
}
.rg_center {
    float: left;
}
.rg_right {
    float: right;
    margin: 15px;
}
/* 对左边部分进行描述:字体大小,字体颜色 */
.rg_left > p:first-child {
    color:#FFD026;
    font-size: 20px;
}

.rg_left > p:last-child {
    color:#A6A6A6;
    font-size: 20px;
}
/* 对右边部分进行描述:字体大小,字体颜色 */
.rg_right > p:first-child {
    font-size: 15px;

}
.rg_right p a {
    color:pink;
}
/* 对中间部分进行描述*/
.td_left {
    width: 100px;
    /* 每行的高度为45个像素点 */
    height: 45px;
    /* 字体向右对齐 */
    text-align: right;
}
.td_right {
    /* 左边字体部分与右边内容部分之间,填充(隔开)50个像素点的位置 */
    padding-left: 50px ;
}
/* 对信息输入区域的边框进行描述 */
#username, #password, #email, #name, #tel, #birthday, #checkcode {
    width: 251px;
    height: 32px;
    border: 1px solid #A6A6A6;
    /* 设置边框圆角 */
    border-radius: 5px;
    padding-left: 10px;
}
/* 对验证码边框再次进行描述:减小边框的长度*/
#checkcode {
    width: 110px;
}
/* 对验证码图片进行描述 */
#img_check{
    height: 32px;
    /* 垂直方向对齐 */
    vertical-align: middle;
}
/* 对注册按钮进行描述 */
#btn_sub{
    width: 150px;
    height: 40px;
    background-color: #FFD026;
    border: 1px solid #FFD026 ;
}
描述之后,效果如下:

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

不过这个时候还没有验证功能,下面将实现这一功能。

表单验证功能的实现

这里拿用户名和密码进行验证:用户名和密码都是6-12位字符,不能有空格。

首先,先向表格中的用户名和密码区,插入块标签,用来显示判断的结果(用户名/密码格式是否正确)

<!-- 表格第一行有两个单元格:用户名 + 输入用户名信息区域 + 用户名是否符合 -->
<tr>
    <!-- 定义一个标签:用户名 -->
    <td class="td_left"><label for="username">用户名</label></td>
    <!-- 定义输入用户名信息的框框、用户名是否符合 -->
    <td class="td_right">
        <input type="text" name="username" id="username" placeholder="请输入用户名">
        <span id="s_username" class="error"></span>
    </td>
</tr>

<!-- 表格第二行有两个单元格:密码 + 输入密码区域 + 密码是否符合 -->
<tr>
    <!-- 定义一个标签:密码 -->
    <td class="td_left"><label for="password">密码</label></td>
    <!-- 定义输入密码的框框、密码是否符合 -->
    <td class="td_right">
        <input type="password" name="password" id="password" placeholder="请输入密码">
        <span id="s_password" class="error"></span>
    </td>
</tr>

如上,在table中添加的内容是:

<span id="s_username" class="error"></span>
和
<span id="s_password" class="error"></span>
具体功能的实现

校验用户名

// 校验用户名
function checkUsername(){
    // 1.获取用户名的值
    var username = document.getElementById("username").value;
    // 2.定义正则表达式
    var reg_username = /^\w{6,12}$/;
    // 3.判断值是否符合正则的规则
    var flag = reg_username.test(username);
    // 4.提示信息
    var s_username = document.getElementById("s_username");
    if(flag){
        // 提示绿色对勾
        s_username.innerHTML = "<img width='35' height='25' src='img/gou.png'/>";
    }else{
        // 提示红色用户名有误
        s_username.innerHTML = "用户名格式有误";
    }
    return flag;
}

校验密码

// 校验密码
function checkPassword(){
    // 1.获取用户名的值
    var password = document.getElementById("password").value;
    // 2.定义正则表达式
    var reg_password = /^\w{6,12}$/;
    // 3.判断值是否符合正则的规则
    var flag = reg_password.test(password);
    // 4.提示信息
    var s_password = document.getElementById("s_password");
    if(flag){
        // 提示绿色对勾
        s_password.innerHTML = "<img width='35' height='25' src='img/gou.png'/>";
    }else{
        // 提示红色用户名有误
        s_password.innerHTML = "密码格式有误";
    }
    return flag;
}
所有的实现代码如下
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册页面</title>
    <style>
        body {
            background: url("./img/register_bg.png");
        }
        
        .rg_layout {
            width: 900px;
            height: 500px;
            border: 8px solid #EEEEEE;
            background-color: white;
            margin: auto;
        }
        
        .rg_left {
            float: left;
            margin: 15px;
        }
        .rg_center {
            float: left;
        }
        .rg_right {
            float: right;
            margin: 15px;
        }
        
        .rg_left > p:first-child {
            color:#FFD026;
            font-size: 20px;
        }

        .rg_left > p:last-child {
            color:#A6A6A6;
            font-size: 20px;
        }
        
        .rg_right > p:first-child {
            font-size: 15px;

        }
        .rg_right p a {
            color:pink;
        }
        
        .td_left {
            width: 100px;
            height: 45px;
            text-align: right;
        }
        .td_right {
            padding-left: 50px ;
        }
        
        #username, #password, #email, #name, #tel, #birthday, #checkcode {
            width: 251px;
            height: 32px;
            border: 1px solid #A6A6A6;
            border-radius: 5px;
            padding-left: 10px;
        }
        
        #checkcode {
            width: 110px;
        }
        
        #img_check {
            height: 32px;
            vertical-align: middle;
        }
        
        #btn_sub {
            width: 150px;
            height: 40px;
            background-color: #FFD026;
            border: 1px solid #FFD026 ;
        }
        
        .error {
            color:red;
        }
        #td_sub {
            padding-left: 150px;
        }
    </style>
    <script>
        window.onload = function(){
            document.getElementById("form").onsubmit = function(){
                return checkUsername() && checkPassword();
            };
            document.getElementById("username").onblur = checkUsername;
            document.getElementById("password").onblur = checkPassword;
        };
        
        function checkUsername(){
            var username = document.getElementById("username").value;
            var reg_username = /^\w{6,12}$/;
            var flag = reg_username.test(username);
            var s_username = document.getElementById("s_username");
            if(flag){
                s_username.innerHTML = "<img width='35' height='25' src='img/gou.png'/>";
            }else{
                s_username.innerHTML = "用户名格式有误";
            }
            return flag;
        }
        
        function checkPassword(){
            var password = document.getElementById("password").value;
            var reg_password = /^\w{6,12}$/;
            var flag = reg_password.test(password);
            var s_password = document.getElementById("s_password");
            if(flag){
                s_password.innerHTML = "<img width='35' height='25' src='img/gou.png'/>";
            }else{
                s_password.innerHTML = "密码格式有误";
            }
            return flag;
        }

    </script>
</head>
<body>

<div class="rg_layout">

    <div class="rg_left">
        <p>新用户注册</p>
        <p>USER REGISTER</p>
    </div>

    <div class="rg_center">
        <div class="rg_form">
            <form action="#" id="form" method="get">
                <table>
                    <tr>
                        <td class="td_left"><label for="username">用户名</label></td>
                        <td class="td_right">
                            <input type="text" name="username" id="username" placeholder="请输入用户名">
                            <span id="s_username" class="error"></span>
                        </td>
                    </tr>

                    <tr>
                        <td class="td_left"><label for="password">密码</label></td>
                        <td class="td_right">
                            <input type="password" name="password" id="password" placeholder="请输入密码">
                            <span id="s_password" class="error"></span>
                        </td>
                    </tr>

                    <tr>
                        <td class="td_left"><label for="email">Email</label></td>
                        <td class="td_right"><input type="email" name="email" id="email" placeholder="请输入邮箱"></td>
                    </tr>

                    <tr>
                        <td class="td_left"><label for="name">姓名</label></td>
                        <td class="td_right"><input type="text" name="name" id="name" placeholder="请输入姓名"></td>
                    </tr>

                    <tr>
                        <td class="td_left"><label for="tel">手机号</label></td>
                        <td class="td_right"><input type="text" name="tel" id="tel" placeholder="请输入手机号"></td>
                    </tr>

                    <tr>
                        <td class="td_left"><label>性别</label></td>
                        <td class="td_right">
                            <input type="radio" name="gender" value="male" checked> 男
                            <input type="radio" name="gender" value="female"> 女
                        </td>
                    </tr>

                    <tr>
                        <td class="td_left"><label for="birthday">出生日期</label></td>
                        <td class="td_right"><input type="date" name="birthday" id="birthday" placeholder="请输入出生日期"></td>
                    </tr>

                    <tr>
                        <td class="td_left"><label for="checkcode" >验证码</label></td>
                        <td class="td_right"><input type="text" name="checkcode" id="checkcode" placeholder="请输入验证码">
                            <img id="img_check" src="img/verify_code.jpg">
                        </td>
                    </tr>


                    <tr>
                        <td colspan="2" id="td_sub"><input type="submit" id="btn_sub" value="注册"></td>
                    </tr>
                </table>

            </form>
        </div>
    </div>

    <div class="rg_right">
        <p>已有账号?<a href="#">立即登录</a></p>
    </div>

</div>

</body>
</html>

html注册验证,HTML,JavaScript,CSS,html,前端,javascript,css,html5

文章来源地址https://www.toymoban.com/news/detail-516618.html

到了这里,关于HTML + CSS + JavaScript 实现注册页面信息验证 详细教程(表单验证)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【HTML+CSS+JS】简单的登录注册验证

    本文是基于https://blog.csdn.net/NpcCat/article/details/106434653?spm=1001.2014.3001.5501的基础上的优化 有私信希望我做登录的用户名密码验证和登录后的页面跳转,这里用JS简单实现一下 还有很多额外的可以做的优化如输入信息格式的验证、查询用户名是否重复等都可以在取到用户输入的信

    2024年02月11日
    浏览(37)
  • 【HTML+CSS+JS】登录注册页面大合集

    学JS也学了一段时间,正巧碰上了人工智能要调用人脸识别接口进行真人人脸识别,于是便 萌生了用人脸来进行注册和登录的想法 ,这样的话就需要开发一个登录注册页面,然后用JS绑定注册事件调用人脸识别接口进行登录注册 饭要一口一口吃,路要一步一步走,于是便在开

    2024年02月09日
    浏览(42)
  • HTML+CSS+JavaScript:渲染电商站购物车页面

     根据下图渲染购物车页面 以下是缺失JS部分的代码,感兴趣的小伙伴可以先自己试着写一写

    2024年02月14日
    浏览(35)
  • HTML旅游景点网页作业制作——旅游中国11个页面(HTML+CSS+JavaScript)

    👨‍🎓学生HTML静态网页基础水平制作👩‍🎓,页面排版干净简洁。使用HTML+CSS页面布局设计,web大学生网页设计作业源码,这是一个不错的旅游网页制作,画面精明,排版整洁,内容丰富,主题鲜明,非常适合初学者学习使用, 这个实例比较全面,有助于同学的学习,本文将

    2024年02月05日
    浏览(44)
  • 渲染流程(下):HTML、CSS和JavaScript,是如何变成页面的?

    在上篇文章中,我们介绍了渲染流水线中的 DOM 生成、样式计算和布局三个阶段,那今天我们接着讲解渲染流水线后面的阶段。 这里还是先简单回顾下上节前三个阶段的主要内容:在 HTML 页面内容被提交给渲染引擎之后,渲染引擎首先将 HTML 解析为浏览器可以理解的 DOM;然后

    2024年02月15日
    浏览(28)
  • 渲染流程(上):HTML、CSS和JavaScript,是如何变成页面的?

    在上一篇文章中我们介绍了导航相关的流程,那导航被提交后又会怎么样呢? 就进入了渲染阶段。这个阶段很重要,了解其相关流程能让你“看透”页面是如何工作的,有了这些知识,你可以解决一系列相关的问题,比如能熟练使用开发者工具,因为能够理解开发者工具里面

    2024年02月16日
    浏览(41)
  • 【JavaScript+自然语言处理+HTML+CSS】实现Web端的智能聊天问答客服实战(附源码 超详细必看)

    需要源码请点赞关注收藏后评论区留言私信~~~ 智能客服的部署方式比较多样化,可以作为组件嵌入到其他应用程序,也可以部署到定制网站,下面分别介绍如何新创建智能客服应用,从而使其能够集成为网站功能的一部分,以及如何将通过PyCharm训练后的智能客服部署到网站

    2024年02月03日
    浏览(28)
  • 【HTML | CSS | JAVASCRIPT】一款可交互的响应式登陆注册表单,你确定不来看看嘛(附源码)

    💂 作者简介: THUNDER王,一名热爱财税和SAP ABAP编程以及热爱分享的博主。目前于江西师范大学会计学专业大二本科在读,同时任汉硕云(广东)科技有限公司ABAP开发顾问。在学习工作中,我通常使用偏后端的开发语言ABAP,SQL进行任务的完成,对SAP企业管理系统,SAP ABAP开发

    2023年04月16日
    浏览(42)
  • 大一Web课程设计:企业网站——HTML+CSS+JavaScript电子购物商城(37页面)

    常见网页设计作业题材有 个人、 美食、 公司、 学校、 旅游、 电商、 宠物、 电器、 茶叶、 家居、 酒店、 舞蹈、 动漫、 服装、 体育、 化妆品、 物流、 环保、 书籍、 婚纱、 游戏、 节日、 戒烟、 电影、 摄影、 文化、 家乡、 鲜花、 礼品、 汽车、 其他等网页设计题目

    2024年02月03日
    浏览(40)
  • 登录和注册页面 - 验证码功能的实现

    目录 1. 生成验证码 2. 将本地验证码发布成 URL 3. 后端返回验证码的 URL 给前端 4. 前端将用户输入的验证码传给后端 5. 后端验证验证码 使用hutool 工具生成验证码. 1.1 添加 hutool 验证码依赖 1.2 创建验证码的控制器  application.propertities 中添加验证码保存路径 ( 末尾一定要带斜杆

    2024年02月15日
    浏览(24)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包