1、英文字母

 1 <script type="text/javascript">
2 //验证只能是字母
3 function checkZm(zm){
4 var zmReg=/^[a-zA-Z]*$/;
5 if(zm!=""&&!zmReg.test(zm)){
6 alert("只能是英文字母!");
7 return false;
8 }
9 }
10 </script>

2、汉字

1 <input type="text" onblur="isChinese(this.value)" placeholder="请输入中文!" />
2 <script language="javascript">
3 function isChinese(obj){
4 var reg=/^[\u0391-\uFFE5]+$/;
5 if(obj!=""&&!reg.test(obj)){
6 alert(‘必须输入中文!‘);
7 return false;
8 }
9 }
10 </script>

3、数字

1 <script language=javascript>
2 //验证只能为数字
3 function checkNumber(obj){
4 var reg = /^[0-9]+$/;
5 if(obj!=""&&!reg.test(obj)){
6 alert(‘只能输入数字!‘);
7 return false;
8 }
9 }
10 </script>

4、时间(限制不能大于当前时间)

1 <script type="text/javascript">
2 //检验时间大小(与当前时间比较)
3 function checkDate(obj){
4 var obj_value=obj.replace(/-/g,"/");//替换字符,变成标准格式(检验格式为:‘2009-12-10‘)
5 // var obj_value=obj.replace("-","/");//替换字符,变成标准格式(检验格式为:‘2010-12-10 11:12‘)
6 var date1=new Date(Date.parse(obj_value));
7 var date2=new Date();//取今天的日期
8 if(date1>date2){
9 alert("不能大于当前时间!");
10 return false;
11 }
12 }
13 </script>

5、空值

1 <script language="javascript">
2 function CheckForm(obj)
3 {
4 if (obj.length == 0) {
5 alert("姓名不能为空!");
6 return false;
7 }
8 return true;
9 alert("姓名不能为空!");
10 }
11 </script>

6、邮箱

1 <script language="javascript">
2 function test(obj){
3 //对电子邮件的验证
4 var myreg = /^([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\_|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
5 if(!myreg.test(obj))
6 {
7 alert(‘请输入有效的邮箱!‘);
8 return false;
9 }
10 }
11 </script>

7、手机号

1 <script type="text/javascript">
2 function validatemobile(mobile) {
3 if(mobile.length==0) {
4 alert(‘手机号码不能为空!‘);
5 return false;
6 }
7 if(mobile.length!=11) {
8 alert(‘请输入有效的手机号码,需是11位!‘);
9 return false;
10 }
11
12 var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/;
13 if(!myreg.test(mobile)) {
14 alert(‘请输入有效的手机号码!‘);
15 return false;
16 }
17 }
18 </script>

8、身份证号

1 <script type="text/javascript">
2 // 构造函数,变量为15位或者18位的身份证号码
3 function clsIDCard(CardNo) {
4 this.Valid=false;
5 this.ID15=‘‘;
6 this.ID18=‘‘;
7 this.Local=‘‘;
8 if(CardNo!=null)this.SetCardNo(CardNo);
9 }
10
11 // 设置身份证号码,15位或者18位
12 clsIDCard.prototype.SetCardNo = function(CardNo) {
13 this.ID15=‘‘;
14 this.ID18=‘‘;
15 this.Local=‘‘;
16 CardNo=CardNo.replace(" ","");
17 var strCardNo;
18 if(CardNo.length==18) {
19 pattern= /^\d{17}(\d|x|X)$/;
20 if (pattern.exec(CardNo)==null)return;
21 strCardNo=CardNo.toUpperCase();
22 } else {
23 pattern= /^\d{15}$/;
24 if (pattern.exec(CardNo)==null)return;
25 strCardNo=CardNo.substr(0,6)+‘19‘+CardNo.substr(6,9)
26 strCardNo+=this.GetVCode(strCardNo);
27 }
28 this.Valid=this.CheckValid(strCardNo);
29 }
30
31 // 校验身份证有效性
32 clsIDCard.prototype.IsValid = function() {
33 return this.Valid;
34 }
35
36 // 返回生日字符串,格式如下,1981-10-10
37 clsIDCard.prototype.GetBirthDate = function() {
38 var BirthDate=‘‘;
39 if(this.Valid)BirthDate=this.GetBirthYear()+‘-‘+this.GetBirthMonth()+‘-‘+this.GetBirthDay();
40 return BirthDate;
41 }
42
43 // 返回生日中的年,格式如下,1981
44 clsIDCard.prototype.GetBirthYear = function() {
45 var BirthYear=‘‘;
46 if(this.Valid)BirthYear=this.ID18.substr(6,4);
47 return BirthYear;
48 }
49
50 // 返回生日中的月,格式如下,10
51 clsIDCard.prototype.GetBirthMonth = function() {
52 var BirthMonth=‘‘;
53 if(this.Valid)BirthMonth=this.ID18.substr(10,2);
54 if(BirthMonth.charAt(0)==‘0‘)BirthMonth=BirthMonth.charAt(1);
55 return BirthMonth;
56 }
57
58 // 返回生日中的日,格式如下,10
59 clsIDCard.prototype.GetBirthDay = function() {
60 var BirthDay=‘‘;
61 if(this.Valid)BirthDay=this.ID18.substr(12,2);
62 return BirthDay;
63 }
64
65 // 返回性别,1:男,0:女
66 clsIDCard.prototype.GetSex = function() {
67 var Sex=‘‘;
68 if(this.Valid)Sex=this.ID18.charAt(16)%2;
69 return Sex;
70 }
71
72 // 返回15位身份证号码
73 clsIDCard.prototype.Get15 = function() {
74 var ID15=‘‘;
75 if(this.Valid)ID15=this.ID15;
76 return ID15;
77 }
78
79 // 返回18位身份证号码
80 clsIDCard.prototype.Get18 = function() {
81 var ID18=‘‘;
82 if(this.Valid)ID18=this.ID18;
83 return ID18;
84 }
85
86 // 返回所在省,例如:上海市、浙江省
87 clsIDCard.prototype.GetLocal = function() {
88 var Local=‘‘;
89 if(this.Valid)Local=this.Local;
90 return Local;
91 }
92
93 clsIDCard.prototype.GetVCode = function(CardNo17) {
94 var Wi = new Array(7,9,10,5,8,4,2,1,6,3,7,9,10,5,8,4,2,1);
95 var Ai = new Array(‘1‘,‘0‘,‘X‘,‘9‘,‘8‘,‘7‘,‘6‘,‘5‘,‘4‘,‘3‘,‘2‘);
96 var cardNoSum = 0;
97 for (var i=0; i<CardNo17.length; i++)cardNoSum+=CardNo17.charAt(i)*Wi[i];
98 var seq = cardNoSum%11;
99 return Ai[seq];
100 }
101
102 clsIDCard.prototype.CheckValid = function(CardNo18) {
103 if(this.GetVCode(CardNo18.substr(0,17))!=CardNo18.charAt(17))return false;
104 if(!this.IsDate(CardNo18.substr(6,8)))return false;
105 var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古",21:"辽宁",22:"吉林",23:"黑龙江 ",31:"上海",32:"江苏",33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南",42:"湖北 ",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆",51:"四川",52:"贵州",53:"云南",54:"西藏 ",61:"陕西",62:"甘肃",63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外"};
106 if(aCity[parseInt(CardNo18.substr(0,2))]==null)return false;
107 this.ID18=CardNo18;
108 this.ID15=CardNo18.substr(0,6)+CardNo18.substr(8,9);
109 this.Local=aCity[parseInt(CardNo18.substr(0,2))];
110 return true;
111 }
112
113 clsIDCard.prototype.IsDate = function(strDate) {
114 var r = strDate.match(/^(\d{1,4})(\d{1,2})(\d{1,2})$/);
115 if(r==null)return false;
116 var d= new Date(r[1], r[2]-1, r[3]);
117 return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[2]&&d.getDate()==r[3]);
118 }
119
120
121 function valiIdCard(idCard){
122 var checkFlag = new clsIDCard(idCard);
123 if (!checkFlag.IsValid()) {
124 alert("输入的身份证号无效,请输入真实的身份证号!");
125 document.getElementByIdx("idCard").focus();
126 return false;
127 }else{
128 alert("是有效身份证!");
129 }
130 }
131 </script>

input表单验证(全面)的更多相关文章

  1. css实现input表单验证

    有没有办法只通过css来确定input标签是否有输入? 我有这个想法是因为我想完成一个自动补全的input部件,最基本的功能是: 如果input没有内容,这隐藏下拉框 反之,显示下拉框 我找到了一个也 ...

  2. input表单验证

    1.屏蔽输入法(只是不能输入中文还可以输入特殊字符)<input style="ime-mode:disabled" onkeydown="if(event.key ...

  3. jQuery学习之路(8)- 表单验证插件-Validation

    ▓▓▓▓▓▓ 大致介绍 jQuery Validate 插件为表单提供了强大的验证功能,让客户端表单验证变得更简单,同时提供了大量的定制选项,满足应用程序各种需求.该插件捆绑了一套有用的验证方法,包括 ...

  4. 玩转spring boot——AOP与表单验证

    AOP在大多数的情况下的应用场景是:日志和验证.至于AOP的理论知识我就不做赘述.而AOP的通知类型有好几种,今天的例子我只选一个有代表意义的“环绕通知”来演示. 一.AOP入门 修改“pom.xml ...

  5. form表单验证-Javascript

    Form表单验证: js基础考试内容,form表单验证,正则表达式,blur事件,自动获取数组,以及css布局样式,动态清除等.完整代码如下: <!DOCTYPE html PUBLIC &qu ...

  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(33)-MVC 表单验证

    系列目录 注:本节阅读需要有MVC 自定义验证的基础,否则比较吃力 一直以来表单的验证都是不可或缺的,微软的东西还是做得比较人性化的,从webform到MVC,都做到了双向验证 单单的用js实现的前端 ...

  7. 实现跨浏览器html5表单验证

    div:nth-of-type(odd){ float: left; clear: left; } .origin-effect > div:nth-of-type(even){ float: ...

  8. jQuery Validate 表单验证 — 用户注册简单应用

    相信很多coder在表单验证这块都是自己写验证规则的,今天我们用jQuery Validate这款前端验证利器来写一个简单的应用. 可以先把我写的这个小demo运行试下,先睹为快.猛戳链接--> ...

  9. jquery validate表单验证插件-推荐

    1 表单验证的准备工作 在开启长篇大论之前,首先将表单验证的效果展示给大家.     1.点击表单项,显示帮助提示 2.鼠标离开表单项时,开始校验元素  3.鼠标离开后的正确.错误提示及鼠标移入时的帮 ...

随机推荐

  1. Maven学习总结(12)——eclipse中构建多模块maven项目

    摘要:本文要用Maven来构建一个多模块的web项目 项目结构如下: system-parent      |----pom.xml      |----system-domain          ...

  2. WPF通用框架ZFS《项目结构介绍01》_模块介绍

    首页介绍: 下图为项目运行首页图片, 大的结构分为三块: 1.Header首部模块(存放通知组件[全局通知.消息管理 ].扩展模块[皮肤.系统设置.关于作者.退出系统]) 2.Left左侧菜单模块(存 ...

  3. SQL 自增列清零方法

    SQL Identity自增列清零方法1.使用DBCC控制台命令: dbcc checkident(表名,RESEED,0) 2.truncate table 也可将当前标识值清零 但当有外键等约束时 ...

  4. 深入分析JavaWeb Item23 -- jsp自己定义标签开发入门

    一.自己定义标签的作用 自己定义标签主要用于移除Jsp页面中的java代码. 二.自己定义标签开发和使用 2.1.自己定义标签开发步骤 1.编写一个实现Tag接口的Java类(标签处理器类) 要编写一 ...

  5. Vue的响应原理

    渲染render function之后就是 核心的响应式过程了 Object.defineProperty vue的核心之一就是Object.defineProperty 方法(IE9及其以上) Ob ...

  6. ElasticSearch 架构图

    ElasticSearch 架构图 从下往上来分析ElasticSearch 架构图 Gateway代表ElasticSearch索引的持久化存储方式. 在Gateway中,ElasticSearch ...

  7. 配置Lotus Domino集群视频详解

    IBM Lotus Domino Server 有个最重要的高可用特新就是集群,它对于任何使用 Domino 服务器的组织,让用户能够持续访问它们的数据库,保证业务不间断运行.下面通过两个视频来学习如 ...

  8. kafka删除主题

    hdp集群默认不能删除kafka主题,如果要删除,需要在ambari上进行配置,将enable delete设置为true.

  9. ES6--基础语法(一)

    一.支持环境:node.js完全支持,标准浏览器完全支持.二.测试环境: chrome下需要在script标签的最先开始的地方需要添加"use strict". firefox下需 ...

  10. 【习题 8-3 UVA - 12545】Bits Equalizer

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 如果1的个数第一个串比第2个串多. 那么就无解. 否则. 找几个位置去凑1 优先找'?'然后才是0的位置 剩余的全都用swap操作就 ...