可以验证整数,非负整数,负整数,数字,非负数,负数,浮点数,正浮点数,负浮点数,邮箱地址,十六进制颜色,中文,ASCII,中国编码号码,IP地址,不能为空,图片,压缩文件,日期,密码,字母,字母与数字,电话或传真。
/*************Invoke****************************************************************
* inputId = "txtContent";
* regType = regExp.Int;
* <input type="text" id="txtContent"/>
* <input type="submit" id="btnCheck" value="测试" οnclick="return checkInput()" />
***********************************************************************************/
if (typeof regExp == "undefined") {
var regExp = {
Int: /^([+-]?)\d+$/,
NonegativeInt: /^([+]?)\d+$/,
NonInt: /^-\d+$/,
Num: /^([+-]?)\d*\.?\d+$/,
NonegativeNum: /^([+]?)\d*\.?\d+$/,
NonNum: /^-\d*\.?\d+$/,
Float: /^([+-]?)\d*\.\d+$/,
PositiveFloat: /^([+]?)\d*\.\d+$/,
NonFloat: /^-\d*\.\d+$/,
Email: /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/,
HexColor: /^#[a-fA-F0-9]{6}/,
Chinese: /^[\u4E00-\u9FA5\uF900-\uFA2D]+$/,
Ascii: /^[\x00-\xFF]+$/,
ZipCode: /^\d{6}$/,
Ip: /^\d{1,3}\.\d{1,3}\.\d{1,3}.\d{1,3}$/,
NotEmpty: /^\S+$/,
Picture: /(.*)\.(jpg|bmp|gif|ico|pcx|jpeg|tif|png|raw|tga)$/,
RarZip: /(.*)\.(rar|zip|7zip|tgz)$/,
Date: /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/,
Password: /^(\w){6,20}$/,
Alphabet: /^[A-Za-z]+$/,
LetterNum: /^[A-Za-z0-9]+$/,
Tel: /^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/
}
}
if (typeof error == "undefined") {
var error = {
Int: "请输入整数",
NonegativeInt: "请输入非负整数",
NonInt: "请输入负整数",
Num: "请输入数字",
NonegativeNum: "请输入非负数",
NonNum: "请输入负数",
Float: "请输入浮点数",
PositiveFloat: "请输入正浮点数",
NonFloat: "请输入负浮点数",
Email: "请输入正确的邮箱地址",
HexColor: "请输入正确的十六进制颜色",
Chinese: "请输入中文",
Ascii: "请输入ASCII",
ZipCode: "请输入中国邮编号码",
Ip: "请输入正确的IP地址",
NotEmpty: "不能为空",
Picture: "请选择图片",
RarZip: "请选择压缩文件",
Date: "请输入正确的日期",
Password: "请输入6-20字母、数字、下划线的密码",
Alphabet: "请输入字母",
LetterNum: "请输入字母与数字",
Tel: "请输入正确有电话或传真号码"
}
}
var inputId = "", regType = regExp.Int;
function checkInput() {
var val = document.getElementById(inputId).value;
if (!regType.test(val)) {
alert(errorMsg());
return false;
}
return true;
}
function errorMsg() {
if (regType == regExp.Int) return error.Int;
else if (regType == regExp.NonegativeInt) return error.NonegativeInt;
else if (regType == regExp.NonInt) return error.NonInt;
else if (regType == regExp.Num) return error.Num;
else if (regType == regExp.NonegativeNum) return error.NonegativeNum;
else if (regType == regExp.NonNum) return error.NonNum;
else if (regType == regExp.Float) return error.Float;
else if (regType == regExp.PositiveFloat) return error.PositiveFloat;
else if (regType == regExp.NonFloat) return error.NonFloat;
else if (regType == regExp.Email) return error.Email;
else if (regType == regExp.HexColor) return error.HexColor;
else if (regType == regExp.Chinese) return error.Chinese;
else if (regType == regExp.Ascii) return error.Ascii;
else if (regType == regExp.ZipCode) return error.ZipCode;
else if (regType == regExp.Ip) return error.Ip;
else if (regType == regExp.NotEmpty) return error.NotEmpty;
else if (regType == regExp.Picture) return error.Picture;
else if (regType == regExp.RarZip) return error.RarZip;
else if (regType == regExp.Date) return error.Date;
else if (regType == regExp.Password) return error.Password;
else if (regType == regExp.Alphabet) return error.Alphabet;
else if (regType == regExp.LetterNum) return error.LetterNum;
else if (regType == regExp.Tel) return error.Tel;
}