2013-03-10|1522阅|作者:虎哥|举报 摘要:// JavaScript Document
// 2013-3-8
//by:webjser
//qq:442665203
//直接调用 Verify(value,RrgStr,fnJson)函数 返回值 true:成功 false:错误
//参数 arguments[0] v
// JavaScript Document
// 2013-3-8
//by:webjser
//qq:442665203
//直接调用 Verify(value,RrgStr,fnJson)函数 返回值 true:成功 false:错误
//参数 arguments[0] value:进行验证的字符串 string
// arguments[1] RrgStr:选择匹配的验证类型 string
// arguments[2] fnJson:选择成功或者失败的回调函数 [可选参数:可以根据函数返回值进行其他操作]
// json error:function(){} 失败回调函数 success:function(){} 成功回调函数
//
//arguments[1] RrgStr 匹配验证列表
// HomeTel: 固定电话号码
// MobTel: 手机号码
// Email: 邮箱
// IdNumber: 身份证号
// Ip: IP地址
// Postcode: 邮政编码
// qq: QQ号码
// Url: url
// NumEn: 字母和数字
// NumEnLine: 数字字母下划线
// Float: 验证小数
//
//
function Verify(value,RrgStr,fnJson)
{
VerifyRrg={
'HomeTel':/^[0-9]{3,4}\-[0-9]{7,8}$/, //固定电话号码
'MobTel':/^1[3|4|5|8][0-9]\d{4,8}$/,//手机号码
'Email':/^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$/,//邮箱
'IdNumber':/(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/,//身份证号
'Ip':/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/, //IP地址
'Postcode': /^[0-9]{6}$/, //邮政编码
'qq':/[1-9][0-9]{4,}/, //QQ号码
'Url':new RegExp(urlReg), //url
'NumEn':/^[A-Za-z0-9]+$/, //字母和数字
'NumEnLine':/^[a-zA-Z0-9_]{1,}$/, //数字字母下划线
'Float':/^-?(?:\d+|\d{1,3}(?:,\d{3})+)(?:\.\d{1,})?$/ //验证小数
}
if(value)
{
var REG=VerifyRrg[RrgStr];
if(!REG.test(value))
{
if(fnJson.error&&typeof fnJson.error=='function'){fnJson.error();};
return false;
}
else
{
if(fnJson.success&&typeof fnJson.success=='function'){fnJson.success();}
return true;
}
}
else{if(fnJson.error&&typeof fnJson.error=='function'){fnJson.error();};return false;}
}
var urlReg = "^((https|http|ftp|rtsp|mms)?://)"
+ "?(([0-9a-z_!~*'().&=+$%-]+: )?[0-9a-z_!~*'().&=+$%-]+@)?" //ftp的user@
+ "(([0-9]{1,3}\.){3}[0-9]{1,3}" // IP形式的URL- 199.194.52.184
+ "|" // 允许IP和DOMAIN(域名)
+ "([0-9a-z_!~*'()-]+\.)*" // 域名- WWW.
+ "([0-9a-z][0-9a-z-]{0,61})?[0-9a-z]\." // 二级域名
+ "[a-z]{2,6})" // first level domain- .com or .museum
+ "(:[0-9]{1,4})?" // 端口- :80
+ "((/?)|" // a slash isn't required if there is no file name
+ "(/[0-9a-z_!~*'().;?:@&=+$,%#-]+)+/?)$";
文章评论
中级程序员
中级程序员
共2 条评论 1/1页