- 浏览: 166554 次
- 性别:
- 来自: 吉林长春
文章分类
最新评论
-
骈骈ai你:
[flash=200,200][阿斯蒂芬阿斯蒂芬url][li ...
Java Web 开发常用函数 -
howesen:
请问:StandardXAConnectionHandle:p ...
Xapool和oracle使用的错误分析 -
liuxuejin:
能不能用一个例子解释以上的全部理论? 常用是登陆认证?
Hash 算法及其应用 -
qwlong:
不错,楼主很强大
MSSQL Oracle MySQL 中NULL的替换 -
pptztf:
人才啊...太感谢了....问题解决...
Oracle服务OracleDBConsoleorcl启动失败解决方案
js 代码
- <script language=javascript>
- function checkIdcard(idcard){
- var area={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:"国外"}
- var idcard,Y,JYM;
- var S,M;
- var idcard_array = new Array();
- idcard_array = idcard.split("");
- //地区检验
- if(area[parseInt(idcard.substr(0,2))]==null) return 4;
- //身份号码位数及格式检验
- switch(idcard.length){
- case 15:
- if ( (parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){
- ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;//测试出生日期的合法性
- } else {
- ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;//测试出生日期的合法性
- }
- if(ereg.test(idcard)) return 0;
- else return 2;
- break;
- case 18:
- //18位身份号码检测
- //出生日期的合法性检查
- //闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))
- //平年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))
- if ( parseInt(idcard.substr(6,4)) % 4 == 0 || (parseInt(idcard.substr(6,4)) % 100 == 0 && parseInt(idcard.substr(6,4))%4 == 0 )){
- ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}[0-9Xx]$/;//闰年出生日期的合法性正则表达式
- } else {
- ereg=/^[1-9][0-9]{5}19[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}[0-9Xx]$/;//平年出生日期的合法性正则表达式
- }
- if(ereg.test(idcard)){//测试出生日期的合法性
- //计算校验位
- S = (parseInt(idcard_array[0]) + parseInt(idcard_array[10])) * 7
- + (parseInt(idcard_array[1]) + parseInt(idcard_array[11])) * 9
- + (parseInt(idcard_array[2]) + parseInt(idcard_array[12])) * 10
- + (parseInt(idcard_array[3]) + parseInt(idcard_array[13])) * 5
- + (parseInt(idcard_array[4]) + parseInt(idcard_array[14])) * 8
- + (parseInt(idcard_array[5]) + parseInt(idcard_array[15])) * 4
- + (parseInt(idcard_array[6]) + parseInt(idcard_array[16])) * 2
- + parseInt(idcard_array[7]) * 1
- + parseInt(idcard_array[8]) * 6
- + parseInt(idcard_array[9]) * 3 ;
- Y = S % 11;
- M = "F";
- JYM = "10X98765432";
- M = JYM.substr(Y,1);//判断校验位
- if(M == idcard_array[17]) return 0; //检测ID的校验位
- else return 3;
- }
- else return 2;
- break;
- default:
- return 1;
- break;
- }
- }
- function CheckForm()
- {
- var Errors=new Array(
- "验证通过!",
- "身份证号码位数不对!",
- "身份证号码出生日期超出范围或含有非法字符!",
- "身份证号码校验错误!",
- "身份证地区非法!"
- );
- var result=checkIdcard(document.getElementById("txt_sfzmhm").value);
- if(result!=0)
- {
- alert(Errors[result]);
- document.getElementById("txt_sfzmhm").focus();
- return false;
- }
- if(document.getElementById("txt_djzsxxdz").value=="")
- {
- alert('请输入你的登记住所详细地址!');
- document.getElementById("txt_djzsxxdz").focus();
- return false;
- }
- return true;
- }
- //================================================
- //地区选择
- function RemoveAllOption(obj)
- {
- var len = obj.length-1;
- for(var i=len; i>=0; i--)
- {
- obj.options.remove(i);
- }
- }
- function AddEmptyOption(obj)
- {
- obj.options.add(new Option("",""));
- }
- function FirstChangeOption1(ele,first,second,field)
- {
- RemoveAllOption(second);
- second.options.add(new Option(first.options[first.selectedIndex].text,""));
- var TempOptionStr;
- var SkillCode = field.value;
- var currentValue = first.value;
- if (currentValue.length >= 2){
- var arrValue = SkillCode.split(";");
- for (var i=0;i<arrValue.length;i++){
- var arrOneValue = arrValue[i].split(",");
- if (currentValue.substr(0,2) == arrOneValue[0].substr(0,2)) { //查找到合适的项目
- if( arrOneValue[0].length >2 && arrOneValue[0] != currentValue)
- {
- TempOptionStr= ' '+arrOneValue[1];
- second.options.add(new Option(TempOptionStr,arrOneValue[0]));
- }
- }
- }
- }
- if (second.options.length <= 1) {
- second.style.display='none'; document.getElementById(ele).value = first.value ;
- }
- else second.style.display=''; }
- function FirstChangeOption2(ele,first,second,third,field)
- {
- RemoveAllOption(second);
- second.options.add(new Option(first.options[first.selectedIndex].text,"")); RemoveAllOption(third);
- AddEmptyOption(third);
- var TempOptionStr;
- var SkillCode = field.value;
- var currentValue = first.value;
- if (currentValue.length >= 2){
- var arrValue = SkillCode.split(";");
- for (var i=0;i<arrValue.length;i++){
- var arrOneValue = arrValue[i].split(",");
- if (currentValue.substr(0,2) == arrOneValue[0].substr(0,2)) { //查找到合适的项目
- var IsZero = true;
- var ssub = arrOneValue[0].substr(4);
- for(var j=0; j<ssub.length;j++)
- {
- if(ssub.substring(j,j+1) != "0")
- {
- IsZero = false;
- break;
- }
- }
- if(IsZero && arrOneValue[0]!=currentValue)
- {
- TempOptionStr= ' '+arrOneValue[1];
- second.options.add(new Option(TempOptionStr,arrOneValue[0]));
- }
- }
- }
- }
- document.getElementById(ele).value = first.value;
- if (second.options.length <= 1) second.style.display='none'; else second.style.display='';
- if (third.options.length <= 1) third.style.display='none'; else third.style.display=''; }
- function SecondChangeOption(ele,second,third,field)
- {
- RemoveAllOption(third);
- third.options.add(new Option(second.options[second.selectedIndex].text.replace(' ',''),""));
- var TempOptionStr;
- var SkillCode = field.value;
- var currentValue = second.value;
- if (currentValue.length!=0){
- var arrValue = SkillCode.split(";");
- for (var i=0;i<arrValue.length;i++){
- var arrOneValue = arrValue[i].split(",");
- if (arrOneValue[0].length>4 && arrOneValue[0] != currentValue && currentValue.substring(0,4) == arrOneValue[0].substr(0,4)) { //查找到合适的项目
- TempOptionStr= ' '+arrOneValue[1];
- third.options.add(new Option(TempOptionStr,arrOneValue[0]));
- }
- }
- }
- document.getElementById(ele).value = second.value;
- if (third.options.length <= 1) third.style.display='none'; else third.style.display=''; }
- function ThirdChangeOption(ele,third)
- {
- document.getElementById(ele).value = third.value ;
- }
- </script>
- 其中idcard为身份证号。
原文地址【http://www.hxhnet.com/article.asp?id=165】
发表评论
-
Spring MVC 3+ Spring3.0.5+ Mybatis3.0.6 整合研发KMS系统
2011-10-28 11:14 0采用Spring3+mybatis整合框架,前台使用Sprin ... -
In Action:Oxidy个人资源管理系统(2-环境搭建)
2008-11-20 15:27 1096书接上文,c3p0和插件我就不提供下载了,进行环境的搭建,我用 ... -
In Action:Oxidy个人资源管理系统(1-介绍和工具下载)
2008-11-18 16:52 2368现在是计算机硬盘空 ... -
WebWork深入浅出
2008-10-14 15:35 899http://www.blogjava.net/moxie/a ... -
webWork学习笔记
2008-10-14 15:05 0Martin Fowler 大师的文章 Inversion o ... -
IBM总结出五项SOA最佳实践
2008-09-21 19:56 0作者 Boris Lublinsky ... -
基于Eclispe的Seam开发环境的配置
2008-09-20 17:37 2825转载请注明出处:http://oxidy.iteye.com ... -
jQuery入门
2008-09-18 08:55 2247概述 随着WEB2.0及ajax思 ... -
Vector、ArrayList、List使用深入剖析
2008-06-02 10:42 994线性表,链表,哈希表是常用的数据结构,在进行Java开发时,J ... -
卓越购书
2008-02-16 13:36 1184最近在卓越网上书店买了基本书,很长时间都想实现自己的想法了。可 ... -
《Spring In Action》读书笔记:征服数据库
2007-09-09 09:58 1634学习Spring 的DAO理念: 通过与持久化技 ... -
《Struts In Action》中文版书籍
2007-08-30 08:36 6067《Struts In Action》是In Action系列中 ... -
WebWork: Java web-application development framework.
2007-08-21 14:16 1273WebWork is a Java ... -
从追MM谈Java的23种设计模式
2007-08-08 15:42 1180设计模式做为程序员的“内功心法”,越来越受到.net社区的重 ... -
读书《精通Struts:基于MVC的Java Web设计与开发》之一
2007-08-08 11:26 1429孙卫琴Java系列 共享数据在Web应用中的范围: ... -
Struts简介
2007-06-11 10:12 2942Struts是MVC架构,他可以造Web应用程序中使用JSP和 ... -
读书笔记:《精通Hibernate:Java对象持久化技术详解》之Hibernate API简介
2007-05-29 13:07 1875应用程序可以直接通过H ... -
读书笔记:《精通Hibernate:Java对象持久化技术详解》
2007-05-27 21:19 1725Hibernate是什么?从不同的角度有不同的解释: ... -
《Spring in Action 中文版》 读书笔记
2007-05-27 21:19 1634Spring是什么? Spring是一个开源框架,由Rod J ...
相关推荐
本文将详细解读一份用于验证身份证号码有效性的JavaScript代码。 首先,中国的身份证号码由18位数字组成,其中前17位为身份码,最后一位可能是数字或字母X,作为校验码。校验码的计算方法相对复杂,它涉及到前17位...
根据提供的信息,我们可以总结出以下有关“身份证验证JavaScript脚本”的关键知识点: ### 身份证验证原理 身份证号码在中国通常有两种格式:15位和18位。这两种格式都有其特定的验证规则。 #### 15位身份证号码...
这个压缩包中的"身份证验证程序.html"文件是一个使用JavaScript编写的HTML页面,它用于验证输入的身份证号码是否合法。以下是对这个知识点的详细阐述: 1. **HTML(超文本标记语言)**:HTML是构建网页的基础,它...
18位身份证号码验证代码,js验证 ,javascript验证18位身份证代码,js验证身份证号码。
本文将深入探讨如何使用JavaScript进行身份证验证,包括有效性检查和区域信息识别。 身份证验证是确保用户输入的有效身份证号码的关键步骤,这对于很多需要用户身份验证的场景非常重要,如注册、实名认证等。在中国...
通过上述分析和代码示例,我们可以看到JavaScript实现身份证验证的过程和细节。这不仅有助于提升用户输入的准确性,也是数据安全和隐私保护的重要一环。在实际应用中,开发者应根据具体需求调整和完善这些验证逻辑,...
这个示例中的JavaScript代码首先检查了身份证号码的基本格式,然后通过`city.js`中的数据验证行政区域代码,再检查出生日期是否合理,最后计算校验码并与输入的校验码对比。如果所有验证都通过,就会在页面上显示...
Java 和 JavaScript 的香港身份证验证方法主要涉及对香港身份证号码格式的有效性检查,通过特定的算法来确定号码是否合法。在 Java 和 JavaScript 中,这个验证过程包括以下步骤: 1. **预处理身份证号码**: - 在...
这篇文章主要介绍了JavaScript实现身法证验证代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 function isIdCardNo(num) { num = num.toUpperCase();...
本文将详细介绍如何使用JavaScript编写身份证验证的代码,确保用户输入的身份证号码符合中国的身份证格式。 首先,中国的身份证号码分为15位和18位两种形式。15位身份证号码在新规定实施后已不再发放,但可能存在于...
本篇详细介绍了如何使用JavaScript编写一个身份证号码验证程序。通过对输入的身份证号码进行多方面的检查,可以有效防止非法数据被提交至服务器,从而提高了系统的安全性和用户体验。开发者可以根据实际需求调整和...
这篇文档提供的JavaScript代码片段是一个从盛大通行证系统中提取出来的身份证验证功能。这个功能的主要目的是检查输入的身份证号码是否符合中国大陆身份证号码的规则。 首先,让我们详细了解一下这段代码的工作原理...
在本文中,我们将详细探讨如何使用JavaScript语言来实现对身份证号码...需要注意的是,身份证验证是一个敏感的操作,涉及到用户隐私和信息安全,因此在实际应用中应当谨慎处理这些数据,并且要符合相关法律法规的要求。
### 正则表达式 JS 身份证验证详解 身份证号码在中国大陆地区具有唯一性,是个人身份的重要标识。为了确保信息安全和个人隐私保护,在很多应用系统中都需要对身份证号码进行合法性和格式性的验证。本文将详细阐述...
身份证验证涉及到更复杂的校验规则,包括地区代码、出生日期、顺序号和校验码等。以下是一个简单的18位身份证号码验证函数: ```javascript function validateIdCard(id) { const idRegex = /(^\d{15}$)|(^\d{18}$...
4. **CommonValidation.js**:这个文件可能是包含通用验证功能的JavaScript库,可能包含了多种数据验证方法,如邮箱、手机号码等,身份证验证只是其中之一。这种模块化的设计使得代码更易于复用和维护。 5. **...
本文将详细解析一个JavaScript身份证验证函数,不仅探讨其背后的逻辑,还会深入解释正则表达式、日期计算以及校验码计算等关键知识点。 #### 核心知识点 1. **正则表达式(Regular Expressions)** - 正则表达式...
对于需要输入纯数字的场景,如电话号码、身份证号等,可以使用以下代码: ```html (/[^\d]/g,'')" onbeforepaste="clipboardData.setData('text',clipboardData.getData('text').replace(/[^\d]/g,''))" ID="Text2...
以下是一些常见的JavaScript验证代码示例: 1. **数字验证**: - **整数验证**:使用正则表达式`/^(-|\+)?\d+$/.test(str)`检查字符串是否为整数,包括正负整数。 - **大于0的整数验证**:`/^\d+$/.test(str)`...