思路:
        1、定义页面
            通过表格格式化表单;
            表格行都有自己的背景颜色;
            单元格中的数据(文本等)用div进行封装,好操作;
        2、定义样式
            表格的样式;
            div的样式;
        3、动态效果
            页面加载时,将所有的输入框定义默认框线颜色和获取焦点时的框线颜色;
            进行内容校验,不正确时显示警告信息。
 
代码如下:
<html>
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>表单验证</title>
    <!-- 思路:
        1、定义页面
            通过表格格式化表单;
            表格行都有自己的背景颜色;
            单元格中的数据(文本等)用div进行封装,好操作;
        2、定义样式
            表格的样式;
            div的样式;
        3、动态效果
            页面加载时,将所有的输入框定义默认框线颜色和获取焦点时的框线颜色;
            进行内容校验,不正确时显示警告信息。
     -->
    <style type="text/css">
        table{
            border: #A50DFA 1px solid;
            width: 500px;
            border-collapse: collapse;
        }
        table th, table td{
            border: #A50DFA 1px solid;
            padding:10px;
        }
        table th{
           
        }
        table td{
           
        }
        .errorinfo{
            color: #EA1508;
            font-family: "华文行楷";
            font-weight: bold;
            display: none;
        }
        .focus{
            border: #03F2FC 2px solid;
        }
        .outs{
            border: #81710D 1px solid;
        }
        .error{
            border: #FA0324 2px solid;
        }
    </style>
    <script type="text/javascript">
        function checkinput(input){
            input.className = "outs";
            input.onfocus = function(){
                this.className = "focus";
            }
        }
        /*窗口加载时就执行*/
        window.onload = function(){
            with(document.forms[0]){
                checkinput(user);
                checkinput(psw);
                checkinput(repsw);
                checkinput(mail);
            }
        }
        /*验证输入的数据*/
        /*方法一:每个输入框一个function,代码重复性高,舍弃不用。*/
        function checkDate(userNode){
            var value = userNode.value;
            var regex = /^\w{3,5}$/;
            var divNode = document.getElementById("userdiv");
            if(regex.test(value)){
                userNode.className = "outs";
                divNode.style.display = "none";
            }else{
                userNode.className = "error";
                divNode.style.display = "block";
            }
        }
        /*方法二*/
        function check(inputNode, regex, divId){
            var divNode = document.getElementById(divId);
            if(regex.test(inputNode.value)){
                inputNode.className = "outs";
                divNode.style.display = "none";
            }else{
                inputNode.className = "error";
                divNode.style.display = "block";
            }
        }
         /*验证用户名*/
        function checkUser(userNode){
            var regex = /^\w{3,5}$/;
            check(userNode, regex, "userdiv");
        }
          /*验证密码格式*/
        function checkPsw(pswNode){
            var regex = /^[a-z0-9]{4,8}$/i;
            check(pswNode, regex, "pswdiv");
        }
        /*验证两次密码是否一致*/
        function checkRepsw(repswNode){
            var psw = document.getElementById("psw").value;
            var repsw = repswNode.value;
            var divNode = document.getElementById("repswdiv");
            if(psw == repsw){
                repswNode.className = "outs";
                divNode.style.display = "none";
            }else{
                repswNode.className = "error";
                divNode.style.display = "block";
            }
        }
      /*验证邮箱*/
        function checkMail(mailNode){
            var regex = /^\w+@\w+(\.\w+)+$/;
            check(mailNode, regex, "maildiv");
        }
    </script>
</head>
<body>
    <form>
        <table>
            <tr>
                <th>用户注册</th>
            </tr>
            <tr>
                <td>
                    <div>用户名</div>
                    <div>
                        <input type="text" name="user" onblur="checkUser(this)"/>
                    </div>
                    <div class="errorinfo" id="userdiv">用户名填写错误。</div>
                    <div>用户名必须是3-5位,由字母(a-z)、数字(0-9)、下划线(_)组成</div>
                </td>
            </tr>
            <tr>
                <td>
                    <div>密码</div>
                    <div>
                        <input type="password" name="psw" id="psw" onblur="checkPsw(this)"/>
                    </div>
                    <div class="errorinfo" id="pswdiv">密码格式错误。</div><br/>
                    <div>确认密码</div>
                    <div>
                        <input type="password" name="repsw"  onblur="checkRepsw(this)"/>
                    </div>
                    <div class="errorinfo" id="repswdiv">两次输入密码不一致。</div>
                    <div>密码必须是4-8位,由字母(a-z)、数字(0-9)组成</div>
                </td>
            </tr>
            <tr>
                <td>
                    <div>邮箱</div>
                    <div>
                        <input type="text" name="mail" onblur="checkMail(this)"/>
                    </div>
                    <div class="errorinfo" id="maildiv">邮箱格式错误,请规范填写。</div>
                </td>
            </tr>
            <tr>
                <th><input type="button" value="提交数据" onclick="submitDate()"></th>
            </tr>
        </table>
    </form>
</body>
</html>
 
 
 
 
 

JS实战 · 表单验证的更多相关文章

  1. ★★★【卡法 常用js库】: js汇合 表单验证 cookie设置 日期格式 电话手机号码 email 整数 小数 金额 检查参数长度

    [卡法 常用js库]: js汇合 表单验证  cookie设置  日期格式  电话手机号码  email  整数  小数  金额   检查参数长度 // +---------------------- ...

  2. js基础-表单验证和提交

    基础知识: 原始提交如下: <form action="/login" method="post" id="form1"> &l ...

  3. JS通用表单验证函数,基于javascript正则表达式

    表单的验证在实际的开发当中是件很烦琐又无趣的事情今天在做一个小项目的时候,需要JS验证,寻找到一个比较好的东西 地址如下: http://blog.csdn.net/goodfunman/archiv ...

  4. JS简单表单验证

    这里我是写了一个简单的注册表单验证功能,亲测有效,一起来看看吧! 首先我的HTML代码是这样的: class大家可以忽略一下,这里我项目使用的是bootstrap的样式. 输入用户名和密码用的是正则表 ...

  5. 表单提交学习笔记(二)—使用jquery.validate.js进行表单验证

    一.官网下载地址:http://plugins.jquery.com/validate/ 二.用法 1.在页面上进行引用 <script src="~/scripts/jquery-1 ...

  6. 原生js的表单验证

    最近在学原生的js,把一些练手的代码往博客放一放,权当积累经验,若有错漏,或是觉得浅显,大家不要见怪. 这是一个原生js编写的简单的表单验证: <!DOCTYPE html><htm ...

  7. js——form表单验证

    用js实现一个简易的表单验证 效果: 代码: <html> <head> <title>js校验form表单</title> <meta char ...

  8. 原生JS写表单验证提交功能

    先上效果图: 表单的基础内容就是昵称判断.手机号判断.邮箱判断.身份证号码判断,这里是用到正则验证检验格式. 页面的表单写法就是一个form的提交.输入框用input来实现,输入内容用value来获取 ...

  9. 原生js制作表单验证,基本的表单验证方法

    表单验证是web前端最常见的功能之一,也属于前端开发的基本功.自己完成一个表单验证的开发,也有助于加深对字符串处理和正则表达式的理解. 基本的表单验证包括如:字母验证.数字验证.字母和数字验证.汉字验 ...

随机推荐

  1. RadioGroup 和 ViewPager 绑定 实现切换

    package com.jereh.helloworld.activity.day12; import android.app.Activity; import android.os.Bundle; ...

  2. drawPython

    # drawSnake import turtle def drawSnake(rad,angle,len,neckrad): for i in range(len): turtle.circle(r ...

  3. Entity FrameWork 5 增删改查 & 直接调用sql语句

    class="brush:csharp;gutter:true;"> #region 1.0 新增 -void Add() /// <summary> /// 1 ...

  4. my97DatePicker选择年、季度、月、周、日

    My97DatePicker是一款非常灵活好用的日期控件.使用非常简单. 下面总结下使用该日历控件选择年.季度.月.周.日的方法. .选择年 <input id="d1212" ...

  5. Python2 新手 编码问题 吐血总结

    什么是编码 任何一种语言.文字.符号等等,计算都是将其以一种类似字典的形式存起来的,比如最早的计算机系统将英文文字转为数字存储(ASCII码),这种文字与数字(或其他)一一对应的关系我们称之为编码.由 ...

  6. Object obj=new Object()的内存引用

    Object obj=new Object(); 一句很简单的代码,但是这里却设计Java栈,Java堆,java方法去三个最重要的内存区域之间的关联. 假设这句代码出现在方法体中. 1.Object ...

  7. 洛谷1640 bzoj1854游戏 匈牙利就是又短又快

    bzoj炸了,靠离线版题目做了两道(过过样例什么的还是轻松的)但是交不了,正巧洛谷有个"大牛分站",就转回洛谷做题了 水题先行,一道傻逼匈牙利 其实本来的思路是搜索然后发现写出来类 ...

  8. java的poi技术写Excel的Sheet

    在这之前写过关于java读,写Excel的blog如下: Excel转Html java的poi技术读,写Excel[2003-2007,2010] java的poi技术读取Excel[2003-20 ...

  9. / fluxChatDemo / 系列 ——项目安装坑洼简要

    第一部分 1.使用import引入时,路径选错 2.React.Component 注意大写 (极浅的坑都掉,原谅我初级中的初级~还是贴出来吧) 3.不知为何运行起来没有内容,都怪自己不熟就上路,以为 ...

  10. AmazeUI 框架知识点-布局和样式整理

    1.Amaze UI 将所有元素的盒模型设置为 border-box.这下好了,妈妈再也不用担心没计算好 padding.border 而使布局破相了. 2.Amaze UI 将浏览器的基准字号设置为 ...