注册功能分析以及表单校验

注册功能分析

表单校验

表单校验:

1、用户名:单词字符,长度8到20位

2、密码:单词字符,长度8到20位

3、email:邮件格式

4、姓名:非空

5、手机号:手机号格式

6、出生日期:非空

7、验证码:非空

DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <title>注册title>
        <link rel="stylesheet" type="text/css" href="css/common.css">
        <link rel="stylesheet" href="css/register.css">

        <script src="js/jquery-3.3.1.js">script>

        <script>
            /*
                表单校验:
                    1、用户名:单词字符,长度8到20位
                  2、密码:单词字符,长度8到20位
                  3、email:邮件格式
                  4、姓名:非空
                  5、手机号:手机号格式
                  6、出生日期:非空
                  7、验证码:非空
             */
            //校验用户名
            function checkUsername() {
                //1、获取用户名
                var usernmae = $("#username").val();
                //2、定义正则
                var reg_username = /^\w{8,20}$/;
                //判断给出提示信息
                var flag = reg_username.test(usernmae);
                if (flag){
                    //用户名合法
                    $("#username").css("border","");
                } else {
                    //用户名非法
                    $("#username").css("border","1px solid red");
                }
                return flag;

            }
            //校验密码
            function checkPassword(){
                //1、获取用户名
                var password = $("#password").val();
                //2、定义正则
                var reg_password = /^\w{8,20}$/;
                //判断给出提示信息
                var flag = reg_password.test(password);
                if (flag){
                    //用户名合法
                    $("#password").css("border","");
                } else {
                    //用户名非法
                    $("#password").css("border","1px solid red");
                }
                return flag;
            }
            //校验邮箱
            function checkEmail(){
                //1、获取邮箱
                var email = $("#email").val();
                //定义规则
                var reg_email = /^\w+@\w+\.\w+$/;
                //判断
                var flag = reg_email.test(email);
                if (flag){
                    $("#email").css("border","");
                }else {
                    $("#email").css("border","1px solid red");
                }
                return flag;
            }

            $(function () {
                $("#registerForm").submit(function () {
                    return checkUsername() && checkPassword() && checkEmail();
                });

                $("#username").blur(checkUsername);
                $("#password").blur(checkPassword);
                $("#email").blur(checkEmail);
            })
        script>

    head>
    <body>

    <div id="header">div>

        <div class="rg_layout">
            <div class="rg_form clearfix">
                <div class="rg_form_left">
                    <p>新用户注册p>
                    <p>USER REGISTERp>
                div>
                <div class="rg_form_center">

                    <form id="registerForm" action="user">

                        <input type="hidden" name="action" value="register">
                        <table style="margin-top: 25px;">
                            <tr>
                                <td class="td_left">
                                    <label for="username">用户名label>
                                td>
                                <td class="td_right">
                                    <input type="text" id="username" name="username" placeholder="请输入账号">
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="password">密码label>
                                td>
                                <td class="td_right">
                                    <input type="text" id="password" name="password" placeholder="请输入密码">
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="email">Emaillabel>
                                td>
                                <td class="td_right">
                                    <input type="text" id="email" name="email" placeholder="请输入Email">
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="name">姓名label>
                                td>
                                <td class="td_right">
                                    <input type="text" id="name" name="name" placeholder="请输入真实姓名">
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="telephone">手机号label>
                                td>
                                <td class="td_right">
                                    <input type="text" id="telephone" name="telephone" placeholder="请输入您的手机号">
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="sex">性别label>
                                td>
                                <td class="td_right gender">
                                    <input type="radio" id="sex" name="sex" value="男" checked><input type="radio" name="sex" value="女">td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="birthday">出生日期label>
                                td>
                                <td class="td_right">
                                    <input type="date" id="birthday" name="birthday" placeholder="年/月/日">
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                    <label for="check">验证码label>
                                td>
                                <td class="td_right check">
                                    <input type="text" id="check" name="check" class="check">
                                    <img src="checkCode" height="32px" alt="" onclick="changeCheckCode(this)">
                                    <script type="text/javascript">
                                        //图片点击事件
                                        function changeCheckCode(img) {
                                            img.src="checkCode?"+new Date().getTime();
                                        }
                                    script>
                                td>
                            tr>
                            <tr>
                                <td class="td_left">
                                td>
                                <td class="td_right check">
                                    <input type="submit" class="submit" value="注册">
                                    <span id="msg" style="color: red;">span>
                                td>
                            tr>
                        table>
                    form>
                div>
                <div class="rg_form_right">
                    <p>
                        已有账号?
                        <a href="#">立即登录a>
                    p>
                div>
            div>
        div>

        <div id="footer">div>

        <script type="text/javascript" src="js/include.js">script>

    body>
html>

Original: https://www.cnblogs.com/xjw12345/p/16615816.html
Author: xjw12345
Title: 注册功能分析以及表单校验

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/574783/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • RocketMQ 摘要

    一个Topic可以被多个Group订阅的,每个group下只会被一个consumer消费consumer+GroupId消费到那个位点,是记录在客户端,还是记录在Rocket服务器…

    Java 2023年5月30日
    095
  • 聊聊webservice

    webservice这个东西已经是一个比较旧的技术了,可能很多人都没听说过,乍一听是不是跟websocket有关呀,哈哈哈,其实压根就是两个东西; 我对webservice的理解是…

    Java 2023年6月6日
    082
  • 自己写的第一个java项目!

    项目名为”零钱通” 细节参考: 【零基础 快速学Java】韩顺平 零基础30天学会Java 基本版: OOP版: SmallChangeSysOOP: Sm…

    Java 2023年6月13日
    092
  • 数据库系统概论小结(三)【面向考试】

    数据库系统概论小结(三)【面向考试】 第三章 关系数据库标准语言SQL 前面学习实操的时候已经做过总结 第四章 数据库安全性 4.1数据库安全性概述 4.1.1数据库不安全因素 非…

    Java 2023年6月16日
    076
  • 差分数组入门

    差分数组 什么是差分数组? 差分数组:差分数组就是原始数组相邻元素之间的差。 其实差分数组是一个 辅助数组,从侧面来表示给定某一数组的变化,一般用来对数组进行区间修改的操作。 比如…

    Java 2023年6月15日
    077
  • 一文带你看懂Java中的Lock锁底层AQS到底是如何实现的

    先获取锁的状态,判断锁的状态是不是等于0,等于0说明没人加锁,可以尝试去加,如果被加锁了,就会走else if,else if会判断加锁的线程是不是当前线程,是的话就给state …

    Java 2023年6月16日
    0101
  • IDEA使用JDBC链接MySql(java编程)

    1、在Maven的pom.xml文件中引入MySql的驱动 2、idea(版本:2021.2.2)JDBC链接MySql数据库 3、编写JDBC代码 : Original: htt…

    Java 2023年6月7日
    068
  • Java系统性能优化实战读书笔记

    前言 我是个喜欢看电子书的人,因为可以边看边记笔记,写感言,对书中精彩的地方进行学习实践,非常感谢本书作者家智老师,分享了这本书的最新电子版,让我有机会能阅读本书! 本书正版链接:…

    Java 2023年5月29日
    0104
  • 好书推荐之JAVA并发编程扛鼎之作:《Java并发编程实战》、《Java并发编程的艺术》

    (pdf文档下载见文末) 大佬推荐 《 Java 并发编程实战》,是一本 完美的 Java 并发参考手册。书中从并发性和线程安全性的基本概念出发,介绍了如何使用类库提供的基本并发构…

    Java 2023年6月15日
    092
  • MCU软件最佳实践——矩阵键盘驱动

    1.矩阵键盘vs独立按键 在mcu应用开发过程中,独立按键比较常见,但是在需要的按键数比较多时,使用矩阵键盘则可以减少io占用,提高系统资源利用率。例如,某mcu项目要求有16个按…

    Java 2023年6月6日
    067
  • Spring配置 bean

    在 xml 文件中通过 bean 节点来配置 beanid:Bean 的名称。在 IOC 容器中必须是唯一的若 id 没有指定,Spring 自动将权限定性类名作为 Bean 的名…

    Java 2023年5月30日
    069
  • Nginx 限流配置

    limit_req_zone 用来限制单位时间内的请求数,即速率限制,采用的漏桶算法 “leaky bucket”。 limit_req_zone $bin…

    Java 2023年5月30日
    079
  • No qualifying bean of type ‘org.springframework.transaction.TransactionManager’ available: more than one ‘primary’ bean found among candidates:

    完整的异常提示信息: No qualifying bean of type ‘org.springframework.transaction.TransactionMa…

    Java 2023年5月30日
    0121
  • 关于ThreadLocal最直白的解释

    ThreadLocal 底层原理如下:实线是强引用,虚线是弱引用Thread 持有 ThreadLocal 对象的引用,ThreadLocalMap 是 Thread 的成员变量,…

    Java 2023年6月9日
    081
  • mybatis insert返回主键的三种方式

    1.情景展示 我们知道,表与表之间的关联关系,通常使用主键,所以在处理复杂业务时,比如:按顺序插入多张表; 我们就需要在插入B表之间拿到插入A表后的主键,如何实现? 2.具体实现 …

    Java 2023年5月30日
    081
  • 二分查找步骤及问题总结

    参数: 有序数组arr(这里按升序来讲),待搜索的值target 根据以上步骤可以写出递归、和非递归两种二分查找的方法 代码实现 public static void main(S…

    Java 2023年6月7日
    071
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球