js 格式验证大全
1.身份证号码验证:
var Common = {
//身份证号验证
IsIdCardNo: function (IdCard) {
var reg = /^\d{15}(\d{2}[0-9X])?$/i;
if (!reg.test(IdCard)) {
return false;
} if (IdCard.length == 15) {
var n = new Date();
var y = n.getFullYear();
if (parseInt("19" + IdCard.substr(6, 2)) < 1900 || parseInt("19" + IdCard.substr(6, 2)) > y) {
return false;
} var birth = "19" + IdCard.substr(6, 2) + "-" + IdCard.substr(8, 2) + "-" + IdCard.substr(10, 2);
if (!Common.IsDate(birth)) {
return false;
}
}
if (IdCard.length == 18) {
var n = new Date();
var y = n.getFullYear();
if (parseInt(IdCard.substr(6, 4)) < 1900 || parseInt(IdCard.substr(6, 4)) > y) {
return false;
} var birth = IdCard.substr(6, 4) + "-" + IdCard.substr(10, 2) + "-" + IdCard.substr(12, 2);
if (!Common.IsDate(birth)) {
return false;
} iW = new Array(7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1); iSum = 0;
for (i = 0; i < 17; i++) {
iC = IdCard.charAt(i);
iVal = parseInt(iC);
iSum += iVal * iW[i];
} iJYM = iSum % 11;
if (iJYM == 0) sJYM = "1";
else if (iJYM == 1) sJYM = "0";
else if (iJYM == 2) sJYM = "x";
else if (iJYM == 3) sJYM = "9";
else if (iJYM == 4) sJYM = "8";
else if (iJYM == 5) sJYM = "7";
else if (iJYM == 6) sJYM = "6";
else if (iJYM == 7) sJYM = "5";
else if (iJYM == 8) sJYM = "4";
else if (iJYM == 9) sJYM = "3";
else if (iJYM == 10) sJYM = "2"; var cCheck = IdCard.charAt(17).toLowerCase();
if (cCheck != sJYM) {
return false;
}
}
return true;
}, //日期验证
IsDate: function (strDate) {
var strSeparator = "-"; //日期分隔符
var strDateArray;
var intYear;
var intMonth;
var intDay;
var boolLeapYear;
strDateArray = strDate.split(strSeparator);
if (strDateArray.length != 3) return false;
intYear = parseInt(strDateArray[0], 10);
intMonth = parseInt(strDateArray[1], 10);
intDay = parseInt(strDateArray[2], 10);
if (isNaN(intYear) || isNaN(intMonth) || isNaN(intDay)) return false;
if (intMonth > 12 || intMonth < 1) return false;
if ((intMonth == 1 || intMonth == 3 || intMonth == 5 || intMonth == 7 || intMonth == 8 || intMonth == 10 || intMonth == 12) && (intDay > 31 || intDay < 1)) return false;
if ((intMonth == 4 || intMonth == 6 || intMonth == 9 || intMonth == 11) && (intDay > 30 || intDay < 1)) return false;
if (intMonth == 2) {
if (intDay < 1) return false;
boolLeapYear = false;
if ((intYear % 100) == 0) {
if ((intYear % 400) == 0) boolLeapYear = true;
}
else {
if ((intYear % 4) == 0) boolLeapYear = true;
}
if (boolLeapYear) {
if (intDay > 29) return false;
}
else {
if (intDay > 28) return false;
}
}
return true;
}
};
2.QQ号码
Common.Valid = {
//验证qq号码
QQNum: function (str) {
var reg = /^\s*\d{4,12}\s*$/g;
return reg.test(str);
},
//空或有效格式验证器
EmptyOrValid: function (validFunc) {
var func = validFunc;
if ($.type(validFunc) == "string")
func = this[$.trim(validFunc)];
return function (str) {
return $.trim(str) === "" || func(str);
}
}
};
3.手机号码、电话号码、传真验证:
$(function () {
String.prototype.isMobile = function () {
return (/^(?:13\d|15[012356789]|18[0256789]|147)-?\d{5}(\d{3}|\*{3})$/.test($.trim(this)));
} String.prototype.isTel = function () {
//"兼容格式: 国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(1-4位)"
return (/^(([0\+]\d{2,3}-)?(0\d{2,3}\-)?([2-9]\d{6,7})+(\-\d{1,4})?$/.test($.trim(this)));
}
String.prototype.isTelMobile = function () {
//"兼容格式: 国家代码(2到3位)-区号(2到3位)-电话号码(7到8位)-分机号(1-4位)"
return (/^(([0\+]\d{2,3}-)?(0\d{2,3}\-)?([2-9]\d{6,7})+(\-\d{1,4})?|(?:13\d|15[012356789]|18[0256789]|147)-?\d{5}(\d{3}|\*{3}))?$/.test($.trim(this)));
}
});
使用示例如下:
if ($.trim($("#Phone").val()) != "" || $.trim($("#Fax").val()) != "") {
if (!$.trim($("#Phone").val()).isTel()) {
Common.ShowInfo("请输入正确的电话号码!");
return;
}
if (!$.trim($("#Fax").val()).isTel()) {
Common.ShowInfo("请输入正确的传真号!");
return;
}
}
if ($.trim($("#MobilePhone").val()) != "") {
if (!$.trim($("#MobilePhone").val()).isMobile()) {
Common.ShowInfo("请输入正确的手机号码!");
return;
}
}
$(function () { });
密码验证(不能包含空格)
String.prototype.hasSpace = function () {
return (/(^\s+)|(\s+$)|(^\S*\s*\S$)/.test($.trim(this)));
}; if($("#Password").val().hasSpace()){//判断
//
}
js 格式验证大全的更多相关文章
- JS脚本验证大全
/** * 2009-10-01 * 贺 臣 * 情 缘 * js各种表单数据验证 *//***************************************************** ...
- js 格式验证总结
1.身份证号验证 var Common = { //身份证号验证 IsIdCardNo: function (IdCard) { var reg = /^\d{15}(\d{2}[0-9X])?$/i ...
- js正则表达式验证大全
/判断输入内容是否为空 function IsNull(){ var str = document.getElementById('str').value.trim(); ...
- js正则表达式验证大全--转载
转载来源:http://www.cnblogs.com/hai-ping/articles/2997538.html#undefined //判断输入内容是否为空 function IsNull(){ ...
- 引用JS表单验证大全 以后方便查看用
1:js 字符串长度限制.判断字符长度 .js限制输入.限制不能输入.textarea 长度限制 2.:js判断汉字.判断是否汉字 .只能输入汉字 3:js判断是否输入英文.只能输入英文 4:js只能 ...
- 正则表达式控制Input输入内容 ,js正则验证方法大全
https://blog.csdn.net/xushichang/article/details/4041507 //输入姓名的正则校验 e.currentTarget.value = e.curre ...
- js日期格式验证
js日期格式验证 <input type="text" maxLength='10' onkeyup='checkDate(this.value,jQuery(this)); ...
- xss其他标签下的js用法总结大全
前段时间我遇到一个问题,就是说普通的平台获取cookie的语句为↓ Default <script src=js地址></script> 1 <scr ...
- 解决jquery.validate.js的验证bug
版本提示:jq为1.4.4, jquery.validate 为jQuery validation plug-in 1.7 问题: a.选填选项,如邮箱设置格式验证,那么情况输入框,验证label变成 ...
随机推荐
- am335x LCD背光问题
/**************************************************************** * am335x backlight problem * * 本问记 ...
- Spring @ControllerAdvice @ExceptionHandler
先来两个连接: Spring3.2新注解@ControllerAdvice Spring 注解学习手札(八)补遗——@ExceptionHandler @Controller Class中如果有@Ex ...
- 关于document.createDocumentFragment()(转)
documentFragment 是一个无父对象的document对象. 他支持以下DOM2方法: appendChild, cloneNode, hasAttributes, hasChildNod ...
- C++測量一段代码的执行时时间
在电脑里发现的一段C++代码,尽管自己不做C++开发了.还是贴出来,给须要的人 LARGE_INTEGER BegainTime ; LARGE_INTEGER EndTime ; LARGE_INT ...
- C# 使用SkinSharp皮肤库
SkinSharp是Windows环境下一款强大的通用换肤库. SkinSharp作为通用换肤库,只需要在您的程序中添加一行代码,就能让您的界面焕然一新,并拥有多种主题风格和色调的动态切换功能以及Ae ...
- sudo 之后 unable to resolve host的问题解决办法
gedit /etc/hosts #127.0.0.1 localhost #127.0.0.1 Masterback或者其他 把后面的Masterback 或者其他改成新的主机名,应该是最近修改过主 ...
- Unity 移动端的复制这么写
游戏上线很久了,有些玩家慢慢就流失了,为了让刚流失的玩家再度回归所以做了召回功能!如果一个200级的玩家10天没上线且成功召回的,就会给予召回玩家丰厚的奖励! Q:那如何召回这个流失的玩家呢? A:召 ...
- ADO.net方法
using System; using System.Collections.Generic; using System.Data; using System.Data.SqlClient; usin ...
- JQuery------帮助文档
转载: http://www.css88.com/jqapi-1.9/jQuery.parseHTML/
- SQLServer------插入数据时出现IDENTITY_INSERT错误
详细错误信息: 当 IDENTITY_INSERT 设置为 OFF 时,不能为表 'Student' 中的标识列插入显式值. 原因: 表中存在某个字段是自动增长的标识符 解决方法: set IDENT ...