javascript 出生日期和身份证判断大全


Posted in Javascript onNovember 13, 2008

if(document.form1.csrq.value==""){
alert("请填写出生日期!");
document.form1.csrq.focus();
return false;
}
if(document.form1.csrq.value==""){
alert("请填写出生日期!");
document.form1.csrq.focus();
return false;
}else{
if(document.form1.csrq.value.length!=8){
alert("出生日期必须为8位!");
document.form1.csrq.focus();
return false;
}
if(document.form1.sfzh.value.length==18){
var sfzh =document.form1.sfzh.value;
if(document.form1.csrq.value!=sfzh.substring(6,14)){
alert("出生日期与身份证号不一致!");
document.form1.csrq.focus();
return false;
}
}
if(document.form1.sfzh.value.length==15){
var sfzh =document.form1.sfzh.value;
if(document.form1.csrq.value!='19'+sfzh.substring(6,12)){
alert("出生日期与身份证号不一致!");
document.form1.csrq.focus();
return false;
}
}
}
if(!isIdCardNo(document.form1.sfzh.value)){
document.form1.sfzh.focus();
return false;
}
function isNN(num){
var badChar ="ABCDEFGHIJKLMNOPQRSTUVWXYZ"; //大写字母
badChar += "abcdefghijklmnopqrstuvwxyz"; //小写字母
badChar += "0123456789"; //数字
badChar += " "+" ";//半角与全角空格
badChar += "`~!@#$%^&()-_=+]\\|:;\"\\'<,>?/";//特殊符号
var c;
//for(var i=0;i<name.length;i++){//依次判断name中的字符
c=num.charAt(0);//取出num中的第1个字符
if(badChar.indexOf(c) != -1){ //如果当前字符在badChar中找到了匹配字符,说明它不是汉字
return false;
} else{
return true;
}
}
function isIdCardNo(num)
{
// if (isNaN(num)) {alert("输入的不是数字!"); return false;}
var len = num.length, re;
if (len == 15){
re = new RegExp(/^(\d{6})()?(\d{2})(\d{2})(\d{2})(\d{3})$/);
}else if (len == 18){
re = new RegExp(/^(\d{6})()?(\d{4})(\d{2})(\d{2})(\d{3})(\d)$/);
}else if (isNN(num)){
return true;
}else {
alert("如果是军官号请输入完整,例如:某军官证号为政字第123456号;如果是身份证号请检测您输入的位数,必须为15位或18位。");
return false;
}
var a = num.match(re);
if (a != null)
{
if (len==15)
{
var D = new Date("19"+a[3]+"/"+a[4]+"/"+a[5]);
var B = D.getYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5];
}
if (len == 18)
{
var D = new Date(a[3]+"/"+a[4]+"/"+a[5]);
var B = D.getFullYear()==a[3]&&(D.getMonth()+1)==a[4]&&D.getDate()==a[5];
}
if (!B) {alert("输入的身份证号 "+ a[0] +" 里出生日期不对!"); return false;}
}
return true;
}

Javascript 相关文章推荐
JavaScript中创建对象和继承示例解读
Feb 12 Javascript
jquery动态改变form属性提交表单
Jun 03 Javascript
jQuery实现的Tab滑动选项卡及图片切换(多种效果)小结
Sep 14 Javascript
AngularJS使用ngOption实现下拉列表的实例代码
Jan 23 Javascript
jQuery基于toggle实现click触发DIV的显示与隐藏问题分析
Jun 12 Javascript
深入浅出ES6之let和const命令
Aug 25 Javascript
详解如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件
Jun 01 jQuery
基于jQuery的左滑出现删除按钮的示例
Aug 29 jQuery
深入理解Vue官方文档梳理之全局API
Nov 22 Javascript
解决vue-cli项目webpack打包后iconfont文件路径的问题
Sep 01 Javascript
vuex如何重置所有state(可定制)
Jan 17 Javascript
深入webpack打包原理及loader和plugin的实现
May 06 Javascript
Ajax,UTF-8还是GB2312 eval 还是execScript
Nov 13 #Javascript
刷新页面实现方式总结(HTML,ASP,JS)
Nov 13 #Javascript
火狐浏览器(firefox)下获得Event对象以及keyCode
Nov 13 #Javascript
javascript vvorld 在线加密破解方法
Nov 13 #Javascript
javascript css float属性的特殊写法
Nov 13 #Javascript
javascript 命名空间以提高代码重用性
Nov 13 #Javascript
JavaScript面向对象之体会[总结]
Nov 13 #Javascript
You might like
php 上传文件类型判断函数(避免上传漏洞 )
2010/06/08 PHP
关于php内存不够用的快速解决方法
2013/10/26 PHP
php利用递归实现删除文件目录的方法
2016/09/23 PHP
php注册和登录界面的实现案例(推荐)
2016/10/24 PHP
php获取开始与结束日期之间所有日期的方法
2016/11/29 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
laravel 框架执行流程与原理简单分析
2020/02/01 PHP
extjs 为某个事件设置拦截器
2010/01/15 Javascript
js多级树形弹出一个小窗口层(非常好用)实例代码
2013/03/19 Javascript
jQuery数据缓存用法分析
2015/02/20 Javascript
js实现网站最上边可关闭的浮动广告条代码
2015/09/04 Javascript
浏览器检测JS代码(兼容目前各大主流浏览器)
2016/02/21 Javascript
AngularJS实现根据变量改变动态加载模板的方法
2016/11/04 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
2016/12/14 Javascript
jQuery插件HighCharts绘制的2D堆柱状图效果示例【附demo源码下载】
2017/03/14 Javascript
jQuery实现Select下拉列表进行状态选择功能
2017/03/30 jQuery
Angular中$state.go页面跳转并传递参数的方法
2017/05/09 Javascript
JavaScript for循环 if判断语句(学习笔记)
2017/10/11 Javascript
vue用Object.defineProperty手写一个简单的双向绑定的示例
2018/07/09 Javascript
[02:17]《辉夜杯》TRG战队巡礼
2015/10/26 DOTA
[00:32]2018DOTA2亚洲邀请赛出场——VP
2018/04/04 DOTA
python 算法 排序实现快速排序
2012/06/05 Python
Python实现把utf-8格式的文件转换成gbk格式的文件
2015/01/22 Python
Python中常用信号signal类型实例
2018/01/25 Python
Python实现按逗号分隔列表的方法
2018/10/23 Python
对Python Class之间函数的调用关系详解
2019/01/23 Python
浅析Python模块之间的相互引用问题
2021/02/26 Python
ghd法国官方网站:英国最受欢迎的美发工具品牌
2019/04/18 全球购物
集世界奢侈品和设计师品牌的意大利精品买手店:Tessabit
2019/08/17 全球购物
如何删除一个表里面的重复行
2013/07/13 面试题
简历中个人自我评价范文
2013/12/26 职场文书
前台文员岗位职责
2013/12/28 职场文书
半年思想汇报
2013/12/30 职场文书
求职信范文英文版
2014/01/05 职场文书
遗产继承公证书
2014/04/09 职场文书
2019年行政人事个人工作总结范本!
2019/07/19 职场文书