/*************************************************
**常用校验器,请引用此文件,不要复制内容到HTML文件中使用
**
**************************************************//*** 计算是否为空字符串(含中文空格和英文空格)* @param s 待检验内容* @return*/
function isBlank(s){if(s==undefined)return false;   s=trim(s);if(s.length==0)return true;elsereturn false;
}/*** 判断输入内容是否为信用卡卡号,对部分借记卡也可能返回true* 注意:不要使用本方法校验其他类型证件* @param value 身份证号码* @return*/
function isCreditCard(value){if(value==undefined){return false;}else if(/[^\u4E00-\u9FA5a-zA-Z0-9]/.test(value)){return false;}else{if (!/^\d{16}$/.test(value)) {//判断卡号是否为16位的数字return false;}var isEven = true;//卡号长度是否为偶数if (value.length % 2 === 1) {isEven = false;}var i;var sum = 0;for (i = 0; i < value.length; i++) {//偶数位卡号奇数位上数字*2,奇数位卡号偶数位上数字*2。//计算权重var weight = 1;if (i % 2 === 0 && isEven) {//位号位为偶数位且卡号长度是为偶数weight = 2;} else if (i % 2 === 1 && !isEven) {//位号位为奇数位且卡号长度是为奇数weight = 2;}var factor = parseInt(value.charAt(i), 10) * weight;if (factor > 9) {//大于9的数减9factor -= 9;}sum += factor;}if (sum % 10 === 0) {return true;} else {return false;}}
}/*** 15位身份证号码转18位。* * @param num* @return*/
function certId15To18(num){// 校验位按照ISO 7064:1983.MOD 11-2的规定生成,X可以认为是数字10。var arrInt = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2); var arrCh = new Array('1', '0', 'X', '9', '8', '7', '6', '5', '4', '3', '2'); var nTemp = 0, i;   var num = num.substr(0, 6) + '19' + num.substr(6, num.length - 6); for(i = 0; i < 17; i ++) { nTemp += num.substr(i, 1) * arrInt[i]; }    num += arrCh[nTemp % 11];   return num;
}/*** 校验身份证号码的合法性。 遵循GB11643-1999公民身份证号码验证规范。* * @param sId* @return*/
function valCertID(sId){if(sId==undefined)return false;   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:"国外"}var iSum=0;var info="";// 是否15、18位数字或17位数字加xif(!(/(^\d{15}$)|(^\d{17}([0-9]|X)$)/.test(sId))){//alert('身份证号长度不对,或不符合格式要求.'); return false;}//转成18位if(sId.length==15){sId = certId15To18(sId);}sId=sId.replace(/x$/i,"a");// 非法地区if(aCity[parseInt(sId.substr(0,2))]==null){// alert('地区不对!');return false;   }   sBirthday=sId.substr(6,4)+"-"+Number(sId.substr(10,2))+"-"+Number(sId.substr(12,2));var d=new Date(sBirthday.replace(/-/g,"/"));// 非法生日if(sBirthday!=(d.getFullYear()+"-"+ (d.getMonth()+1) + "-" + d.getDate())){// alert("生日有误!");return false; }for(var i = 17;i>=0;i --) iSum += (Math.pow(2,i) % 11) * parseInt(sId.charAt(17 - i),11);// 非法证号if(iSum%11!=1){ return false; }return true;
}/*** 计算UTF-8情况下对应字符串的字节长度(会去除所有空格计算)* 按每个非ascii字符3位计算* @param s 待验证字段* @return*/
function wordByteLenUTF8(s){if(s==undefined)return 0;   s = trim(s);var w=0;for(var i=0;i<s.length;i++){var c=s.charCodeAt(i);if((c>=0X0001 && c<=0X007e) || 0Xff60<=c && c<=0Xff9f){w++;}else{w+=3;}}return w;
}/*** 计算GBK情况下对应字符串的字节长度(会去除所有空格计算)* 按每个GBK 2个字节计算* @param s 待验证字段* @return*/
function wordByteLenGBK(s){if(s==undefined)return 0;   s = trim(s);var w=0;for(var i=0;i<s.length;i++){var c=s.charCodeAt(i);if((c>=0X0001 && c<=0X007e) || 0Xff60<=c && c<=0Xff9f){w++;}else{w+=2;}}return w;
}/*** 判断输入内容是否为中文* @param val 待验证字段* @return*/
function isChinese(val) {try {var reg =/[^\u4e00-\u9fa5]/;if (reg.test(val)) {return false;}return true;} catch (e) {return false;}
}/*** 判断是否含有全角字符\数字\标点(可能还需要完善)* @param val* @returns {Boolean}*/
function hasSBCEnglishCharAnNumber(val){if(val==undefined)return false;else{var reg=/^[\uFF01-\uFF5e\u3000-\u3011]+$/g;if(reg.test(val))return true;elsereturn false}}/*** 判断输入内容是否仅包含英文和数字* @param val  * @returns {Boolean} 如果输入内容仅包括英文和数字,返回true*/
function isEnglishAndNumber(val) {try {if (!/\W/.test(val))return true;return false;} catch (e) {return false;}
}/*** 判断输入内容是否为手机号码* @param val* @returns {Boolean}*/
function isMobilePhone(val) {try {if (/(^0?[1][0-9]{10}$)/.test(val))return true;return false;} catch (e) {return false;}
}/*** 判断输入内容是否包含标点符号,中文符号也计算在内* @param val* @returns*/
function includePunctuation(val){if(val==undefined)return false;var reg = /^[\u4E00-\u9FA5\a-zA-Z0-9]+$/g;return !reg.test(val);}/*** 判断是否为中国邮政编码* @param val* @returns {Boolean}*/
function isCNZipCode(val) {try {if (/^[0-9]{6}$/.test(val))return true;return false;} catch (e) {return false;}
}/*** 判断输入内容是否为合法的URL地址* @param val* @returns {Boolean}*/
function isURL(val) {try {if (/^(http|https|ftp):\/\/(([A-Z0-9][A-Z0-9_-]*)(\.[A-Z0-9][A-Z0-9_-]*)+)(:(\d+))?\/?/i.test(val))return true;return false;} catch (e) {return false;}
}/*** 去除字串中的所有空格和unicode空格* 按每个GBK 2个字节计算* @param s 待验证字段* @return*/
function trim(str){var asciiblankregex=/\s/g;var unicodeblankregex=/[\u3000]/g;//去除半角空格str=str.replace(asciiblankregex,"");return str.replace(unicodeblankregex,"");   }/*** 我的信用卡* * Huangheqing* * 2013-04-26*/
function isCardNo(cardNo){if(cardNo.length!=16){return false;}if(/622252\d{10}/.test(cardNo)){return true;}if(/622253\d{10}/.test(cardNo)){return true;}if(/458123\d{10}/.test(cardNo)){return true;}if(/458124\d{10}/.test(cardNo)){return true;}if(/521899\d{10}/.test(cardNo)){return true;}if(/520169\d{10}/.test(cardNo)){return true;}if(/628218\d{10}/.test(cardNo)){return true;}if(/628216\d{10}/.test(cardNo)){return true;}if(/522964\d{10}/.test(cardNo)){return true;}if(/434910\d{10}/.test(cardNo)){return true;}if(/622656\d{10}/.test(cardNo)){return true;}if(/622284\d{10}/.test(cardNo)){return true;}if(/622285\d{10}/.test(cardNo)){return true;}if(/625138\d{10}/.test(cardNo)){return true;}if(/406595\d{10}/.test(cardNo)){return true;}if(/405568\d{10}/.test(cardNo)){return true;}if(/518823\d{10}/.test(cardNo)){return true;}if(/552853\d{10}/.test(cardNo)){return true;}return false;
}function blankSpace(val){if(/^\s+$/.test(val)){return false;}return true;
}function isNull(val){if(val.length==0){return true;}return false;
}function wordLen(val){var len = val.length;for(var i=0;i<val.length;i++){if(val.charCodeAt(i)>127){len+=2;}}return len;
}/*** 邀请好友姓名校验* 限制50* @param {} userName* @return {Boolean}*/
function isName(userName){var len = wordLen(userName);if(len<=50&&/^[\u4E00-\u9FA5\a-zA-Z\s·.]*$/.test(userName)){return true;} return false;
}function isUserName(userName){var len = wordLen(userName);if(len<=40&&/^[\u4E00-\u9FA5\a-zA-Z\s·.]*$/.test(userName)){return true;} return false;
}function isNickName(nickName){var len = wordLen(nickName);if(len<51&&/^[\u4E00-\u9FA5\a-zA-Z0-9\s]*$/.test(nickName)){return true;}return false;
}function isEmail(email){if((email.length<65)&&(/^(?:\w|\.|-)+@(?:\w|-)+(?:\.(?:\w|-)+)+$/.test(email))){//长度小于等于64位的emailreturn true;}return false;
}function isCentNo(val){var strReg = /^[\u4E00-\u9FA5\!\"\#\$\%\&\'\(\)\*\+\,\-\.\/\:\;\<\=\>\?\@\[\\\]\^\_\`\{\|\}\~a-zA-Z0-9]*$/g;if(strReg.test(val)){isCentType = document.getElementById("certtype").selectedIndex==1;if(isCentType){centNo = $("#certnumber").val().toUpperCase();$("#certnumber").val(centNo);//页面同时转为大写if(!valCertID(centNo)){return false;}}return true;}return false;
}function isGenderType(){isCentType = document.getElementById("certtype").selectedIndex==1;centNo = $("#certnumber").val();var genderType = getGenderType(centNo);if(isCentType&&isCentNo()){if(genderType=="FEMALE"){if($("#fsex").is("input") && $("#fsex").attr("checked") == "checked"){return true;}else if($("#fsex").is("span") && ($("#fsex").hasClass("checked") || $("#fsex").hasClass("selected"))){return true;}}if(genderType=="MALE"){if($("#msex").is("input") && $("#msex").attr("checked") == "checked"){return true;}else if($("#msex").is("span") && ($("#msex").hasClass("checked") || $("#msex").hasClass("selected"))){return true;}}return false;}else{return true;}
}function getGenderType(centNo){if(centNo.length == 15){centNo = certId15To18(centNo);}var sexnum = centNo.substring(16, 17);if (sexnum % 2 == 0) {return "FEMALE";} else {return "MALE";}
}function isAddress(val){var len = wordLen(val);if(len<200&&!(/[\r\n]/.test(val))){return true;}return false;
}/*** 验证手机或邮箱收到的6为验证码* @param {} code* @return {Boolean}*/
function isVarifyCode(code){if(/^[0-9]{6}$/.test(code)){return true;}return false;
}/*** 密码校验* @param {} pwd* @return {Boolean}*/
function isPwd(pwd){if(/^[0-9a-zA-Z]{6,32}$/.test(pwd)){return true;}return false;
}/*** 6-15位数字或字母* @param pwd* @returns {Boolean}*/
function is6to15Pwd(val){if(/^[0-9a-zA-Z]{6,15}$/.test(val)){return true;}return false;
}/*** 卡号密码校验* @param pwd* @returns {Boolean}*/
function isCardPwd(pwd){if((/^[0-9]{0}$/.test(pwd))||(/^[0-9]{6}$/.test(pwd))){return true;}return false;
}/*** 确认密码校验* @param {} vaildPwd* @return {Boolean}*/
function vPwd(vaildPwd){if($("#password").val()==vaildPwd){return true;}return false;
}/*** 手机或邮箱注册校验* @param {} val* @return {Boolean}*/
function isLoginId(val){if(isEmail(val)||isMobilePhone(val)){return true;}return false;
}function centTypeChange(){document.getElementById("certnumber").value="";if(document.getElementById("certtype").selectedIndex==0){document.getElementById("certnumber").disabled = true;}else{document.getElementById("certnumber").disabled = false;}
}   function maxLen(val,max){if(wordLen(val)>max)return false;return true;
}function isVcoden(code){if(/^\d{5}$/.test(code)){return true;}return false;
}
/**
*我的信用卡校验方法
*
*huangheqing
*
*2013-04-26
*//**
*我的信用卡校验方法
*
*HuangHeqing
*
*2013-10-19
*/
function isSSNO(val,inputId){if(!val){return false;}certNo = val.toUpperCase();$("#"+inputId).val(certNo);//页面同时转为大写if(!valCertID(certNo)){return false;}return true;
}function isNewCardPwd(val){if(!val){return false;}if(/^[0-9]{6}$/.test(val)){return true;}return false;
}function vCardPwd(pwd,conpwd){if(!pwd){return false;}if(!conpwd){return false;}if(pwd==conpwd){return true;}return false;
}function creatDate(year,month,day) {var date = new Date();date.setUTCFullYear(year, month - 1, day);date.setUTCHours(0, 0, 0, 0);if((date.getUTCFullYear()==year)&&(date.getMonth()==month-1)){return date;}else{return NaN;}
}function yyyyMMdd(value) {if(!value){return false;}if(value.length!=8){return false;}var valusDate = creatDate(value.substring(0, 4), value.substring(4, 6), value.substring(6, 8));return !/Invalid|NaN/.test((valusDate).toString());
}function isCVV2(val){if(!val){return false;}if(/^[0-9]{3}$/.test(val)){return true;}return false;
}
/**
*我的信用卡校验方法
*
*HuangHeqing
*
*2013-10-19
*/function isAccept(value){if(value==1){return true;}return false;
}

javascript常用校验器相关推荐

  1. zend framework php编码规范,Zend Framework常用校验器详解

    本文实例讲述了Zend Framework常用校验器.分享给大家供大家参考,具体如下: Date日期校验器 代码:<?php require_once 'Zend/Validate/Date.p ...

  2. Zend Framework学习之常用校验器

    Date日期校验器 代码: <?php require_once 'Zend/Validate/Date.php'; function c_date($date){$validator = ne ...

  3. javascript 常用校验代码 2

    请参看:http://hw1287789687.iteye.com/blog/2124945 (1)判断是否是数字 Java代码   /*** * whether is digit */ com.wh ...

  4. 前端之 JavaScript 常用数据类型和操作

    JavaScript 常用数据类型有:数字.字符串.布尔.Null.Undefined.对象 JavaScript 拥有动态类型 JavaScript 拥有动态类型.这意味着相同的变量可用作不同的类型 ...

  5. Bean Validation完结篇:你必须关注的边边角角(约束级联、自定义约束、自定义校验器、国际化失败消息...)【享学Spring】

    每篇一句 没有任何技术方案会是一种银弹,任何东西都是有利弊的 前言 一般来说,对于web项目我们都有必要对请求参数进行校验,有的前端使用JavaScript校验,但是为了安全起见后端的校验都是必须的. ...

  6. [转]javascript常用的小技巧

    javascript常用的小技巧 分类: javascript 2011-12-19 09:30 170人阅读 评论(1) 收藏 举报 事件源对象 event.srcElement.tagName e ...

  7. 7 种 Javascript 常用设计模式学习笔记

    7 种 Javascript 常用设计模式学习笔记 由于 JS 或者前端的场景限制,并不是 23 种设计模式都常用. 有的是没有使用场景,有的模式使用场景非常少,所以只是列举 7 个常见的模式 本文的 ...

  8. html5判断text文本是数字,JavaScript常用判断写法大全

    js验证表单大全,用JS控制表单提交,具体内容如下所示: 1. 长度限制 function test() { if(document.a.b.value.length>50) { alert(& ...

  9. javascript 常用类

    javascript 常用类 2008-01-09 13:34 一.验证类 1.数字验证内 1.1 整数 1.2 大于0的整数 (用于传来的ID的验证) 1.3 负整数的验证 1.4 整数不能大于iM ...

  10. Javascript 常用技巧 [2]

    Javascript 常用技巧 [2] /** 请问如何去掉主页右面的滚动条? <!-- <body scroll="no"> -->  <!-- & ...

最新文章

  1. 多线程 Thread类
  2. Spring-Security (学习记录四)--配置权限过滤器,采用数据库方式获取权限
  3. 人生,能有多少个十年?| PMCAFF 十年故事
  4. 批量备SAP中CBO ABAP 程序代码为TXT文件备份
  5. 使用cmake安装mysql5.5.13
  6. 数列分块入门3(查询前驱)
  7. sql注入_1-8_宽字节注入
  8. 算法 --- 反转数组
  9. python线性回归x可以数量不一样吗_R和Python中的线性回归 - 在同一问题上的结果不同...
  10. ajax上传文件到servlet
  11. 两个指针变量可以相减
  12. mybatis-plus控制台打印SQL
  13. 1.深入分布式缓存:从原理到实践 --- 缓存为王
  14. Go语言 for循环案例
  15. K8S集群Calico网络组件报错BIRD is not ready: BGP not established with
  16. DOS窗口的一些简单介绍
  17. 我们是如何认识这个世界的呢
  18. 小高不太行之前端——html网页制作
  19. java n_javan是什么意思_javan怎么读_javan翻译_用法_发音_词组_同反义词_爪哇人[语]-新东方在线英语词典...
  20. 在 Python 中使用计算机视觉实现哈利波特的隐形斗篷

热门文章

  1. h5 默认为移动端页面_HTML5默认登录页面
  2. 正确打开adams软件_Adams2017 64位证书安装图文教程
  3. 数据分析统计工具有哪些?
  4. Inpaint 强大的去水印、改图软体,轻鬆把不要的物件从相片中移除
  5. 最新华为EMUI 11.0.0 Mate40和Mate30成功安装Google play及谷歌套件(附带解决谷歌弹窗)的方法
  6. vue在线引入阿里矢量图标
  7. textcnn模型实践
  8. 联想电脑硬盘保护系统EDU8.0.1iso安装
  9. 技能大赛训练题:交换机虚拟化练习
  10. Linux文件打包tar