js简单实现用户注册信息的校验代码


Posted in Javascript onNovember 15, 2013

register.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>用户注册</title>
<style type="text/css">
  @import "css/userRegister.css";
</style> 
</head>
<body id="BODY">
<div id="DIV_FORM">
<form method="post" action="url" >
 <table id="TABLE">
    <tbody>
        <tr>
           <td>用户名:</td>
           <td>
              <input name="username"  id="USERNAME" type="text" onfocus="showDesc(this)" onblur="checkText(this)"/>
           </td>
        </tr>
        <tr>
           <td>密码:</td>
           <td>
             <input name="password" id="PASSWORD" type="text" onfocus="showDesc(this)" onblur="checkText(this)"/>
           </td>
        </tr> 
        <tr>
           <td>确认密码:</td>
           <td>
             <input name="password2" id="PASSWORD2" type="text" onfocus="showDesc(this)" onblur="checkText(this)"/>
           </td>
        </tr> 
        <tr>
           <td>身份证号:</td>
           <td>
             <input name="IDNumber" id="IDNUMBER" type="text" onfocus="showDesc(this)" onblur="checkText(this)"/>
           </td>
        </tr> 
        <tr>
           <td>电话号码:</td>
           <td>
             <input name="phoneNumber" id="PHONENUMBER" type="text" onfocus="showDesc(this)" onblur="checkText(this)"/>
           </td>
        </tr> 
        <tr>
           <td>Email:</td>
           <td>
               <input name="email" id="EMAIL" type="text" onfocus="showDesc(this)" onblur="checkText(this)"/>
           </td>
        </tr> 
        <tr>
           <td> </td>
           <td align="right">
             <input type="submit" value="确认提交" />
           </td>
        </tr> 
    </tbody>  
    </table>
   <table id="TABLE2" border="0">
       <tr><td><span id="username">请输入用户名</span></td></tr>
       <tr><td><span id="password">请输入密码</span></td></tr>
       <tr><td><span id="password2">请再次输入密码</span></td></tr>
       <tr><td><span id="IDNumber">请输入身份证号码</span></td></tr>
       <tr><td><span id="phoneNumber">请输入电话号码</span></td></tr>
       <tr><td><span id="email">请输入邮箱地址</span></td></tr>
    </table>
</form>
</div>
<script  type="text/javascript"  src="jslib/registerCheck.js">
</script>
</body>
</html>

registerCheck.js

//输入框获得焦点时,显示提示内容
function showDesc(obj)
{  
   var id= obj.name;
   document.getElementById(id).style.display="inline";
}
//输入框失去焦点时检验输入内容是否有效
function checkText(obj)
{
   //获取输入框的id值
   var id= obj.name;
   var text=document.getElementById(id.toString().toUpperCase()).value;
   //判断是否为空
   if(text.replace(/\s/g, "")=="")
   {
      document.getElementById(id).innerHTML="输入不能为空";
   }
   else
   {
     //组装方法
     //取首字母转换为大写,其余不变
     var firstChar=id.charAt(0).toString().toUpperCase();
     //
     var strsub=id.substring(1,id.length);
     var strMethod="check"+firstChar+strsub+"()";
     var isTrue = eval(strMethod);
     if(isTrue)
     {
         document.getElementById(id).innerHTML="输入有效";
     }
   }
   
} 
function checkUsername()
{
    //只简单的判断用户名的长度
    var id = document.getElementById("USERNAME");
    var username=id.value;    
    if(username.length > 10)
    {
      document.getElementById(id.name).innerHTML = "输入的用户名过长";
      return false;
    } 
    else
    return true;
}
function checkPassword()
{
    var password = document.getElementById("PASSWORD").value;    
    return true;
}
function checkPassword2()
{
     var id=document.getElementById("PASSWORD");
     var id2=document.getElementById("PASSWORD2");
     var password = id.value;    
     var password2 = id2.value;
     if(password!=password2)
     {
        document.getElementById(id.name).innerHTML="密码不一致";
        return false;
     }
     return true;    
}
function checkIDNumber()
{
  var id=document.getElementById("IDNUMBER"); 
  var IDNumber =id.value;
  if(IDNumber.length<18||IDNumber.length>19)
  {
    document.getElementById(id.name).innerHTML="身份证号长度有误";
    return false;
  }
  var expr=/([0]{18}[x|y]?)|([1]{18}[x|y]?)/i;
  if(expr.test(IDNumber))
  {
     document.getElementById(id.name).innerHTML="身份证号不可以全'0'或全'1'";
     return false;
  }
  return true;
}
function checkPhoneNumber()
{
// 利用正则表达式对输入数据匹配
   var id=document.getElementById("PHONENUMBER");
   var phone = id.value;     
//匹配到一个非数字字符,则返回false 
   var expr =  /\D/i;
   if(expr.test(phone))
   {
      document.getElementById(id.name).innerHTML="不能输入非数字字符";
      return false;
   }
   return true;
}
function checkEmail()
{
// 利用正则表达式对输入数据匹配
   var id =  document.getElementById("EMAIL")
   var email = id.value;    
//以字母或数字开头,跟上@,字母数字以.com结尾
   var expr =  /^([0-9]|[a-z])+@([0-9]|[a-z])+(\.[c][o][m])$/i;
   if(!expr.test(email))
   {
      document.getElementById(id.name).innerHTML="输入的邮箱格式有误";
      return false;
   }
   return true;
}

CSS

@charset "utf-8";
/* CSS Document */
#BODY{
    text-align:center;
}
#TABLE{
    text-align:left;
    margin: auto;
    float:left;
}
#DIV_FORM{
    margin-left:300px;
}
#TABLE2{
    text-align:left;
    width:150px;
    height:150px;
}
#TABLE2 tr
{
    height:24px;
}
#TABLE2 span{
    display:none;
}
Javascript 相关文章推荐
Extjs4 Treegrid 使用心得分享(经验篇)
Jul 01 Javascript
JavaScript数组各种常见用法实例分析
Aug 04 Javascript
jQuery循环遍历子节点并获取值的方法
Apr 14 Javascript
在JavaScript中对HTML进行反转义详解
May 18 Javascript
jquery自适应布局的简单实例
May 28 Javascript
如何制作幻灯片(代码分享)
Jan 06 Javascript
JS通过调用微信API实现微信支付功能的方法示例
Jun 29 Javascript
JavaScript 中Date对象的格式化代码方法汇总
Sep 06 Javascript
Vue-cli@3.0 插件系统简析
Sep 05 Javascript
vue elementUI tree树形控件获取父节点ID的实例
Sep 12 Javascript
浅谈Angular单元测试总结
Mar 22 Javascript
Vue组件简易模拟实现购物车
Dec 21 Vue.js
jquery slibings选取同级其他元素的实现代码
Nov 15 #Javascript
jquery实现手风琴效果实例代码
Nov 15 #Javascript
jquery中插件实现自动添加用户的具体代码
Nov 15 #Javascript
用jquery中插件dialog实现弹框效果实例代码
Nov 15 #Javascript
javascript禁制后退键(Backspace)实例代码
Nov 15 #Javascript
根据身份证号自动输出相关信息(籍贯,出身日期,性别)
Nov 15 #Javascript
当json键为数字时的取值方法解析
Nov 15 #Javascript
You might like
谈PHP生成静态页面分析 模板+缓存+写文件
2009/08/17 PHP
php中jQuery插件autocomplate的简单使用笔记
2012/06/14 PHP
PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法
2014/05/10 PHP
[原创]解决wincache不支持64位PHP5.5/5.6的问题(提供64位wincache下载)
2016/06/22 PHP
PHP socket 模拟POST 请求实例代码
2016/07/18 PHP
PHP多进程编程总结(推荐)
2016/07/18 PHP
新浪刚打开页面出来的全屏广告代码
2007/04/02 Javascript
jQuery Validation插件remote验证方式的Bug解决
2010/07/01 Javascript
网站内容禁止复制和粘贴、另存为的js代码
2014/02/26 Javascript
node.js中的fs.realpathSync方法使用说明
2014/12/16 Javascript
JavaScript内存管理介绍
2015/03/13 Javascript
举例简介AngularJS的内部语言环境
2015/06/17 Javascript
Node.js与Sails ~项目结构与Mvc实现及日志机制
2015/10/14 Javascript
超实用的javascript时间处理总结
2016/08/16 Javascript
基于layer.js实现收货地址弹框选择然后返回相应的地址信息
2017/05/26 Javascript
浅谈react.js中实现tab吸顶效果的问题
2017/09/06 Javascript
Angular实现的日程表功能【可添加及隐藏显示内容】
2017/12/27 Javascript
解决vue中修改export default中脚本报一大堆错的问题
2018/08/27 Javascript
浅谈vux之x-input使用以及源码解读
2018/11/04 Javascript
从0到1构建vueSSR项目之node以及vue-cli3的配置
2019/03/07 Javascript
微信小程序-可移动菜单的实现过程详解
2019/06/24 Javascript
小程序中this.setData的使用和注意事项
2019/08/28 Javascript
vue-i18n实现中英文切换的方法
2020/07/06 Javascript
[01:02:00]DOTA2-DPC中国联赛 正赛 Elephant vs IG BO3 第三场 1月24日
2021/03/11 DOTA
python中global用法实例分析
2015/04/30 Python
pandas对指定列进行填充的方法
2018/04/11 Python
Python快速查找list中相同部分的方法
2018/06/27 Python
Python学习笔记之错误和异常及访问错误消息详解
2019/08/08 Python
详解Python 函数参数的拆解
2020/09/02 Python
用python进行视频剪辑
2020/11/02 Python
HTML5 Canvas的性能提高技巧经验分享
2013/07/02 HTML / CSS
英国鲜花速递:Serenata Flowers
2018/04/03 全球购物
网页美工求职信
2014/02/15 职场文书
团队精神口号
2014/06/06 职场文书
运动会演讲稿200字
2014/08/25 职场文书
领导班子个人对照检查剖析材料
2014/09/29 职场文书