各类js验证大全

/*$#################################################$*/ 
/* 程序功能:输入验证 */ 
/* 函数名称: */ 
/* function CheckData(valname,val,valimode,limitlen) */ 
/* 功能说明:验证字符串数据 */ 
/* function CheckUserName(val,min,max) */ 
/* 功能说明:验证用户名 */ 
/* function CheckPassWord(val,min,max) */ 
/* 功能说明:验证密码 */ 
/* function IsSame(val1,val2) */ 
/* 验证密码匹配 */ 
/* function CheckEmail(val,mode) */ 
/* 功能说明:验证Email */ 
/* function CheckValHeight(val,min,max,mode) */ 
/* 功能说明:验证用户身高 */ 
/* function CheckValWeight(val,min,max,mode) */ 
/* 功能说明:验证用户体重 */ 
/* function CheckNumber(val,min,max,mode) */ 
/* 功能说明:验证数值 */ 
/* function CheckPositive(val,min,max,mode) */ 
/* 功能说明:验证正数值 */ 
/* function CheckNegative(val,min,max,mode) */ 
/* 功能说明:验证负数值 */ 
/* function CheckFloat(val,min,max,mode) */ 
/* 功能说明:验证浮点数值 */ 
/* function CheckPath(val,mode) */ 
/* 功能说明:验证文件路径 */ 
/* function CheckURL(val,mode) */ 
/* 功能说明:验证URL */ 
/* function CheckChinaIDCard_J(val,mode) */ 
/* 功能说明:验证身份证 */ 
/* function isInteger(sNum) */ 
/* 功能说明:验证整数 */ 
/* function CheckZip(val,slen,mode) */ 
/* 功能说明:验证Zip */ 
/* 输入参数:mode真&假(是否允许为空) */ 
/* val表单(被判断项),va2表单(被判断项) */ 
/* max(最大值),min(最小值) ...... */ 
/* 编写时间: 2003.09.08.2214 */ 
/*$#################################################$*/ 
//验证字符串数据 
function CheckData(valname,val,valimode,limitlen){ 
if( val.value.indexOf("<",0)>0 || val.value.indexOf(">",0)>0){ 
alert(valname+"不能包含<或>字符!。"); 
val.focus(); 
val.select(); 
return false; 

if(valimode==1){ 
if(isblank(val.value)){ 
alert(valname+"不能为空!"); 
val.focus(); 
val.select(); 
return false; 

tmp=new String(val.value) 
if(istoolong(tmp,limitlen)){ 
alert(valname+"不能超过"+limitlen+"个字符!"); 
val.focus(); 
val.select(); 
return false; 


else{ 
tmp=new String(val.value) 
if(istoolong(tmp,limitlen)){ 
alert(valname+"不能超过"+limitlen+"个字符!!"); 
val.focus(); 
val.select(); 
return false; 


return true; 

function isblank(str){ 
var i; 
var len=str.length; 
for(i=0;i<len;++i){ 
if(str.charAt(i)!=" ") 
return false; 

return true; 

function istoolong(str,i){ 
var len=str.length; 
if(i==0) 
return false; 
else{ 
if(len>i) 
return true; 
else 
return false; 


//验证用户名 
function CheckUserName(val,min,max){ 
var len = val.value.length; 
if (len<min || len>max){ 
alert("用户名长度不正确,应为"+min+"-"+max+"个英文字母、数字。"); 
val.focus(); 
val.select(); 
return false; 

for (i=0;i<val.value.length;i++){ 
var ch = val.value.charAt(i); 
if ( (ch<"0" || ch>"9") && (ch<"a" || ch >"z")){ 
alert("用户名必须由小写字母或数字组成。"); 
val.focus(); 
val.select(); 
return false; 


var first =val.value.charAt(0) 
if (first<"a" || ch >"z"){ 
alert("用户名必须由小写字母开头。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证密码 
function CheckPassWord(val,min,max){ 
var len = val.value.length; 
if (len<min || len>max){ 
alert("密码长度不正确,应为"+min+"-"+max+"个英文字母、数字。"); 
val.focus(); 
val.select(); 
return false; 

for (i=0;i<val.value.length;i++){ 
var ch = val.value.charAt(i); 
if ( (ch<"0" || ch>"9") && (ch<"a" || ch >"z")){ 
alert("密码必须由小写字母或数字组成。"); 
val.focus(); 
val.select(); 
return false; 


return true; 

//验证密码匹配 
function IsSame(val1,val2){ 
if (val1.value != val2.value ){ 
alert("两次输入的密码不相同。"); 
val2.focus(); 
val2.select(); 
return false; 

else 
return true; 

//验证Email 
function CheckEmail(val,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var etext 
var elen 
var i 
var aa 
etext=val.value 
elen=etext.length 
if (elen<5){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 

i= etext.indexOf("@",0) 
if (i==0 || i==-1 || i==elen-1){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 

else{ 
if (etext.indexOf("@",i+1)!=-1){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 


if (etext.indexOf("..",i+1)!=-1){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 

i=etext.indexOf(".",0) 
if (i==0 || i==-1 || etext.charAt(elen-1)=='.'){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 

if ( etext.charAt(0)=='-' || etext.charAt(elen-1)=='-'){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 

if ( etext.charAt(0)=='_' || etext.charAt(elen-1)=='_'){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 

for (i=0;i<=elen-1;i++){ 
aa=etext.charAt(i) 
if (!((aa=='.') || (aa=='@') || (aa=='-') ||(aa=='_') || (aa>='0' && aa<='9') || (aa>='a' && aa<='z') || (aa>='A' && aa<='Z'))){ 
alert("请输入正确的Email。"); 
val.focus(); 
val.select(); 
return false; 


return true; 

//验证用户身高 
function CheckValHeight(val,min,max,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var len = val.value.length; 
if (len<min || len>max){ 
alert("请输入正确的身高数据。"); 
val.focus(); 
val.select(); 
return false; 

var val2 = val.value; 
for (i=0;i<val2.length;i++){ 
var ch = val2.charAt(i); 
if ( (ch<"0" || ch>"9") ){ 
alert("身高数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 


if (isNaN(val2)){ 
alert("身高数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 

else if (parseInt(val2)<=0){ 
alert("身高数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('0')==0){ 
alert("身高数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证用户体重 
function CheckValWeight(val,min,max,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var len = val.value.length; 
if (len<min || len>max){ 
alert("请输入正确的体重数据。"); 
val.focus(); 
val.select(); 
return false; 

var val2 = val.value; 
for (i=0;i<val2.length;i++){ 
var ch = val2.charAt(i); 
if ( (ch<"0" || ch>"9") ){ 
alert("体重数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 


if (isNaN(val2)){ 
alert("体重数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 

else if (parseInt(val2)<=0){ 
alert("体重数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('0')==0){ 
alert("体重数据必须由有效数字组成。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证数值 
function CheckNumber(val,min,max,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var len = val.value.length; 
if (len<min || len>max){ 
alert("请输入正确的数值。"); 
val.focus(); 
val.select(); 
return false; 

var val2 = val.value; 
for (i=1;i<val2.length;i++){ 
var ch = val2.charAt(i); 
if ( (ch<"0" || ch>"9" ) ){ 
alert("请输入正确的数值。"); 
val.focus(); 
val.select(); 
return false; 


if (isNaN(val2)){ 
alert("请输入正确的数值。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('0')==0 && len>1){ 
alert("请输入正确的有效数值。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('-')==0 && val2.indexOf('0')==1){ 
alert("请输入正确的有效数值。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证正数值 
function CheckPositive(val,min,max,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

if(!CheckNumber(val,min,max,mode)){ 
val.focus(); 
val.select(); 
return false; 

if (parseInt(val.value)<=0){ 
alert("数据必须为有效的正整数。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证负数值 
function CheckNegative(val,min,max,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

if(!CheckNumber(val,min,max,mode)){ 
val.focus(); 
val.select(); 
return false; 

if (parseInt(val.value)>=0){ 
alert("数据必须为有效的负整数。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证浮点数值 
function CheckFloat(val,min,max,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var len = val.value.length; 
if (len<min || len>max){ 
alert("请输入正确的浮点数值。"); 
val.focus(); 
val.select(); 
return false; 

var val2 = val.value; 
for (i=1;i<val2.length;i++){ 
var ch = val2.charAt(i); 
if ( (ch<"0" || ch>"9" ) ){ 
if(ch!="."){ 
alert("请输入正确的浮点数值。"); 
val.focus(); 
val.select(); 
return false; 



if (isNaN(val2)){ 
alert("请输入正确的浮点数值。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('0')==0 && val2.indexOf('.')!=1){ 
alert("请输入正确的有效浮点数值。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('-')==0 && val2.indexOf('0')==1 && val2.indexOf('.')!=2){ 
alert("请输入正确的有效浮点数值。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('-')==0 && val2.indexOf('.')==1){ 
alert("请输入正确的有效浮点数值。"); 
val.focus(); 
val.select(); 
return false; 

else if (val2.indexOf('.')==0){ 
alert("请输入正确的有效浮点数值。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证文件路径 
function CheckPath(val,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var val2 = val.value; 
if ( val2.indexOf(':\\')>0 ){ 
var isNot=" !@#$^*()'`~|]}[{;.>,<?%&+="; 
if (val2.indexOf('\"')>0){ 
alert("请输入正确的文件路径。"); 
val.focus(); 
val.select(); 
return false; 

else{ 
for (var i = 0;i < val2.length;i++){ 
for (var x = 1 ;x < isNot.length;x++){ 
if (val2.charAt(i)==isNot.charAt(x)){ 
alert("请输入正确的文件路径。"); 
val.focus(); 
val.select(); 
return false; 





else{ 
alert("请输入正确的文件路径。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证URL 
function CheckURL(val,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

var val2 = val.value; 
if ( val2.indexOf('://')>0 ){ 
var isNot=" !@$^*()'`~|]}[{;.>,<"; 
if (val2.indexOf('\"')>0){ 
alert("请输入正确的URL。"); 
val.focus(); 
val.select(); 
return false; 

else{ 
for (var i = 0;i < val2.length;i++){ 
for (var x = 1 ;x < isNot.length;x++){ 
if (val2.charAt(i)==isNot.charAt(x)){ 
alert("请输入正确的URL。"); 
val.focus(); 
val.select(); 
return false; 





else{ 
alert("请输入正确的URL。"); 
val.focus(); 
val.select(); 
return false; 

return true; 

//验证身份证 
function CheckChinaIDCard_J(val,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

sNo = val.value.toString() 
if (!isInteger(sNo)) { 
alert("请输入正确的身份证。"); 
val.focus(); 
val.select(); 
return false 

switch(sNo.length){ 
case 15: if (isValidDate(sNo.substr(6,2),sNo.substr(8,2),sNo.substr(10,2))) { 
return true 

case 17: if (isValidDate(sNo.substr(6,4),sNo.substr(10,2),sNo.substr(12,2))) { 
return true 


alert("请输入正确的身份证。"); 
val.focus(); 
val.select(); 
return false 

function isInteger(sNum) { 
var num 
num=new RegExp('[^0-9_]','') 
if (isNaN(sNum)) { 
return false 

else { 
if (sNum.search(num)>=0) { 
return false 

else { 
return true 



//验证Zip 
function CheckZip(val,slen,mode){ 
if((mode==0) && (val.value=="")){ 
return true; 

if(val.value.length!=slen){ 
alert('请输入正确的邮政编码!!'); 
val.focus(); 
val.select(); 
return false 

var r1 
r1 = new RegExp('[^0-9]',''); 
if ( val.value.search(r1) >= 0 ) { 
alert('请输入正确的邮政编码!!'); 
val.focus(); 
val.select(); 
return false 

else 
return true; 

电话号码的验证 
要求: 
  (1)电话号码由数字、"("、")"和"-"构成 
  (2)电话号码为3到8位 
  (3)如果电话号码中包含有区号,那么区号为三位或四位 
  (4)区号用"("、")"或"-"和其他部分隔开 
  (5)移动电话号码为11或12位,如果为12位,那么第一位为0 
  (6)11位移动电话号码的第一位和第二位为"13" 
  (7)12位移动电话号码的第二位和第三位为"13" 
  根据这几条规则,可以与出以下正则表达式: 
  (^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$) 
<script language="javascript"> 
function PhoneCheck(s) { 
var str=s; 
var reg=/(^[0-9]{3,4}\-[0-9]{3,8}$)|(^[0-9]{3,8}$)|(^\([0-9]{3,4}\)[0-9]{3,8}$)|(^0{0,1}13[0-9]{9}$)/ 
alert(reg.test(str)); 

</script> 
<input type=text name="iphone"> 
<input type=button οnclick="PhoneCheck(document.all.iphone.value)" value="Check"> 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
自己写的比较全js验证,供大家参考 //身份证验证 function checkIdcard(idcard1,showMsg){ var idcard=this.trim(idcard1);// 对身份证号码做处理。去除头尾空格。 var Errors=new Array( "验证通过!", "身份证号码位数不对!", "身份证号码出生日期超出范围或含有非法字符!", "身份证号码校验错误!", "身份证地区非法!" ); var area={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 idcard,Y,JYM; var S,M; var idcard_array = new Array(); idcard_array = idcard.split(""); /*基本校验*/ if(idcard == "" || idcard == null || idcard.length == 0) { if(showMsg==null||showMsg=="") alert("身份证号为空,请输入您的身份证号!"); return false; } /*地区检验*/ if(area[parseInt(idcard.substr(0,2))]==null) { if(showMsg==null||showMsg=="") alert(Errors[4]); return false; } /*身份号码位数及格式检验*/ switch(idcard.length){ case 15: if ( (parseInt(idcard.substr(6,2))+1900) % 4 == 0 || ((parseInt(idcard.substr(6,2))+1900) % 100 == 0 && (parseInt(idcard.substr(6,2))+1900) % 4 == 0 )){ ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|[1-2][0-9]))[0-9]{3}$/;//测试出生日期的合法性 } else { ereg=/^[1-9][0-9]{5}[0-9]{2}((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06|09|11)(0[1-9]|[1-2][0-9]|30)|02(0[1-9]|1[0-9]|2[0-8]))[0-9]{3}$/;//测试出生日期的合法性 } if(ereg.test(idcard)){ //alert(Errors[0]+"15"); return true; //15位验证通过 } else { if(showMsg==null||showMsg=="") alert(Errors[2]); return false; } break; case 18: //18位身份号码检测 //出生日期的合法性检查 //闰年月日:((01|03|05|07|08|10|12)(0[1-9]|[1-2][0-9]|3[0-1])|(04|06

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值