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

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;
}

(0)

相关推荐

  • 根据出生日期自动取得星座的js代码

    无奈啊~只怪读书时没有好好用功~看着JavaScript,一个头顿时变成两个........ 还好网络提供了很好的资料库~看了下,然后自己改了下,基本算能完成任务吧~写下一份存档,留待日后 复制代码 代码如下: function xingzuo() { var start = 1901, date=document.getElementById("txtDay").value, month=document.getElementById("txtMonth").va

  • js出生日期 年月日级联菜单示例代码

    现在世界通用的公历(阳历)也经过一个长期演变的过程.我们先看,公历每个月的日数是固定的:"七前单大,八后双大".也就是说,一.三.五.七.八.十.腊月(十二月)是31天,四.六.九.十一月是30天,只有二月,平年28天,闰年29天. 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits

  • 通过身份证号得到出生日期和性别的js代码

    //身份证校验 与得到生日代码 复制代码 代码如下: <script language="javascript"> function showBirthday(val) { var birthdayValue; if(15==val.length) { //15位身份证号码 birthdayValue = val.charAt(6)+val.charAt(7); if(parseInt(birthdayValue)<10) { birthdayValue = '20'

  • js实现根据身份证号自动生成出生日期

    本文实例为大家讲述了js实现根据身份证号自动生成出生日期的代码,分享给大家供大家参考,具体内容如下 运行效果图: <!doctype> <html> <head> <script type="text/javascript"> function dealCard(){ var birthday=getBirthday(); switch(birthday){ case 0:alert("Sorry,the program run

  • js简单实现根据身份证号码识别性别年龄生日

    根据身份证号码识别性别年龄生日的JS代码: 复制代码 代码如下: function discriCard(){ //获取输入身份证号码 var UUserCard = ""; //获取出生日期 UUserCard.substring(6, 10) + "-" + UUserCard.substring(10, 12) + "-" + UUserCard.substring(12, 14); //获取性别 if (parseInt(UUserCar

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

    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.

  • javascript常见数据验证插件大全

    原生Javascript电话号码验证,邮件验证,身份证验证.使用时传入要验证的字符串,返回ture代表符合,返回false代码不符合. 使用: document.getElementById("btnPhone").onclick=function(){ alert(ValidationHandler.IsPhone(document.getElementById("phoneInput").value)==true?"合法":"不合法

  • javascript实现验证身份证号的有效性并提示

    javascript实现验证身份证号的有效性并提示 function nunber(allowancePersonValue){ if(allowancePersonValue=="身份证号"){ $("#span_username").show(); $("#span_username").html("身份证号不能为空"); return false; } //校验长度,类型 else if(isCardNo(allowan

  • JavaScript for循环 if判断语句(学习笔记)

    今天学习了JavaScript里面的for循环以及if的判断语句 for(初始值:循环条件:操作){ 满足条件要执行的代码语句 } 初始值:循环前的初始化变量,通常为赋值表达式:建议用var赋值,可以加快运行速度. 循环条件:每次循环前要计算的条件,是运算符类别中的条件运算符,返回值为true或false,当返回值为true时执行循环,为false时退出循环.(往往是i>=n;或用逻辑运算符) 操作:每循环一次以后要计算的表达式,通常是递增++或递减--等赋值表达式. for语句中的三个参数,第

  • javascript简单写的判断电话号码实例

    用javascript简单写的判断电话号码 在很多网站注册的时候,需要我们填写电话号码,本来想糊弄一下,但是还不行,一直提示不正确,我去网上搜了很多,正则表达式,发现有很多不对的, 最后写了一个简单的,但是比较实用的 首先是html部分的内容 手机号:<input type="text" class="loginuser" placeholder="请输入您的手机号" id="uid" onblur="chec

  • JavaScript代码里的判断小结

    比较判断 比较判断是比较两个值,返回一个布尔值,表示是否满足比较条件.JavaScript一共提供了8个比较运算符,这里主要说一下严格相等运算符和相等运算符的区别 严格相等运算符=== 判断 返回 两个值类型不同 false 两个值都是null/undefined/true/false true 两个值其中之一为NaN false 两个值都为数值且值相等 true 两个值都为字符串,且值相等 true 两个值都指向同一个引用类型 true 1 === "1" // false true

  • JavaScript基于自定义函数判断变量类型的实现方法

    本文实例讲述了JavaScript基于自定义函数判断变量类型的实现方法.分享给大家供大家参考,具体如下: 通常用typeof来判断js变量的类型,但很多时候仅仅typeof满足不了要求的. 我写了一个自定义函数来做这个事,判断的比较全面了. function varType(v){ if ( typeof v=== "object" ){ if (v=== null ) return 'null' ; if (v. constructor ) return (v. constructo

  • 基于javascript实现根据身份证号码识别性别和年龄

    本文实例介绍了javascript实现根据身份证号码识别性别和年龄的详细代码,分享给大家供大家参考,具体内容如下 效果图: 具体代码: <html> <head> <meta charset="gb2312"> <title>jb51</title> <script type="text/javascript"> function discriCard(UUserCard) { UUserCar

  • JavaScript对数字的判断与处理实例分析

    本文实例讲述了JavaScript对数字的判断与处理技巧.分享给大家供大家参考.具体分析如下: Javascript多态的属性是非常爽的,一个var就不用记这么多奇怪的变量,然而,有时候你会困惑,为何,我明明是对两个数进行相加处理,可是结果却被当作字符串加起来呢?这就是Javascript的var不好的地方,它不像php,用一个.来指明这是字符串的连接.这是你需要parseFloat来明确指明这个var是数.需要用isNaN来判断这是不是数.isNaN(一个被判断的var)的时候,结果为真那么它

  • JavaScript使用位运算符判断奇数和偶数的方法

    本文实例讲述了JavaScript使用位运算符判断奇数和偶数的方法.分享给大家供大家参考.具体实现方法如下: <!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&qu

随机推荐