js 身份证、手机号、邮箱验证
2015-08-31 11:44
295 查看
/** * 邮箱校验 */ function check_email(email){ var reg = /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/; return reg.test(email); } /** * 手机号校验,1开头共11位数字。 */ function check_phone(phone){ var reg = /^1\d{10}$/; return reg.test(phone); } /** * 身份证校验,身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X */ function check_ID(card){ var reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/; if(reg.test(card)){ if(card.length==18){ //将前17位加权因子保存在数组里 var idCardWi=new Array( 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ); //这是除以11后,可能产生的11位余数、验证码,也保存成数组 var idCardY=new Array( 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ); //用来保存前17位各自乖以加权因子后的总和 var idCardWiSum=0; for(var i=0;i<17;i++){ idCardWiSum+=card.substring(i,i+1)*idCardWi[i]; } //计算出校验码所在数组的位置 var idCardMod=idCardWiSum%11; //得到最后一位身份证号码 var idCardLast=card.substring(17); //如果等于2,则说明校验码是10,身份证号码最后一位应该是X if(idCardMod==2){ if(idCardLast=="X"||idCardLast=="x"){ return true; }else{ return false; } }else{ //用计算出的验证码与最后一位身份证号码匹配,如果一致,说明通过,否则是无效的身份证号码 if(idCardLast==idCardY[idCardMod]){ return true; }else{ return false; } } } }else{ return false; } } /** * 字母校验 * @param obj * @returns {boolean} */ function check_letter(obj){ if (/^[a-za-z]+$/.test( obj )) { return true; }else{ return false; } }
相关文章推荐
- javascript中window.document的属性、方法和事件的总结
- Javascript高级程序设计——基本类型和引用类型的值
- js实现仿爱微网两级导航菜单效果代码
- JavaScript回车提交
- JavaScript鼠标移入移出时颜色变化代码
- javascript与java编码互转
- Javascript鼠标滚轮编程
- 推荐几本 Javascript 书籍
- javascript命名规范
- JavaScript学习笔记3-附录(Java的各类型数据在内存中分配情况详解)
- js控制限制输入数字,限制输入中文
- JavaScript 键盘event.keyCode值列表大全
- [C#技术] .NET平台开源JSON库LitJSON的使用方法(转载)
- 《JSF教程》-03 环境搭建与第一个入门例子
- javascript闭包的理解
- JavaScript学习笔记
- javascript中的函数Function
- WebStorm安装ext js插件
- 学习javascript设计模式之代理模式
- js方式的页面跳转