// 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_!~*'().;?:@&=+$,%#-]+)+/?)$";