JS(也用到Jquery)正则表达示校验邮箱、手机、用户名、身份证、数字、中文、日期
说明:('#id')取 控件ID ('#id').val()取控件里的值 ----//校验是否全由数字组成 function isDigit(s){ var s=$('#didit').val(); var patrn=/^[0-9]{1,20}$/; if (!patrn.exec(s)) { alert('请重新输入数字!'); $('#didit').val("");//清空值 $('#didit').focus();//把光标聚焦到输入框 return ; } alert('校验通过!'); return ; } ----//校验登录名:只能输入5-20个以字母开头、可带数字、“_”、“.”的字串 function isRegisterUserName() { var s=$('#uname').val(); var patrn=/^[a-zA-Z]{1}([a-zA-Z0-9]|[._]){4,19}$/; if (!patrn.exec(s)) { alert('请重新输入用户名!'); $('#uname').val("");//清空值 $('#uname').focus();//把光标聚焦到输入框 return ; } alert('校验通过!'); return ; } ----//校验用户姓名:只能输入1-30个以字母开头的字串 function isTrueName() { var s=$('#uname2').val(); var patrn=/^[a-zA-Z]{1,30}$/; if (!patrn.exec(s)) { alert('请重新输入用户名!'); $('#uname2').val("");//清空值 $('#uname2').focus();//把光标聚焦到输入框 return ; } alert('校验通过!'); return ; } ----//校验密码:只能输入6-20个字母、数字、下划线 function isPasswd(s) { var patrn=/^(\w){6,20}$/; if (!patrn.exec(s)) return false return true } ---//校验普通电话、传真号码:可以“+”开头,除数字外,可含有“-” function isTel(s) { //var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?(\d){1,12})+$/; var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; if (!patrn.exec(s)) return false return true } ---//校验手机号码:必须以数字开头,除数字外,可含有“-” function isMobil(s) { var patrn=/^[+]{0,1}(\d){1,3}[ ]?([-]?((\d)|[ ]){1,12})+$/; if (!patrn.exec(s)) return false return true } ----//校验邮政编码 function isPostalCode(s) { //var patrn=/^[a-zA-Z0-9]{3,12}$/; var patrn=/^[a-zA-Z0-9 ]{3,12}$/; if (!patrn.exec(s)) return false return true } ------加了一个验证中文的函数 如下: //批次名称 var reg=/^[\u0391-\uFFE5]+$/; if(!reg.test($('#batchName').val())){ alert('批次名称只能是中文,不能有其它字符或空格!'); return false; } ---//校验搜索关键字 function isSearch(s) { var patrn=/^[^`~!@#$%^&*()+=|\\\][\]\{\}:;\'\,.<>/?]{1}[^`~!@$%^&()+=|\\\][\]\{\}:;\'\,.<>?]{0,19}$/; if (!patrn.exec(s)) return false return true } ---//校验IP function isIP(s) //by zergling { var patrn=/^[0-9.]{1,20}$/; if (!patrn.exec(s)) return false return true } ---//2、时间类 2.1 短时间,形如 (13:04:06) function isTime(str) { var a = str.match(/^(\d{1,2})(?(\d{1,2})\2(\d{1,2})$/); if (a == null) {alert('输入的参数不是时间格式'); return false;} if (a[1]>24 || a[3]>60 || a[4]>60) { alert("时间格式不对"); return false } return true; } 2.2 短日期,形如 (2003-12-05) function strDateTime(str) { var r = str.match(/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/); if(r==null)return false; var d= new Date(r[1], r[3]-1, r[4]); return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]); } var str=$('#gainTime').val(); var patrn=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/; if(!str.match(patrn)){ alert('日期格式不正确!'); $("#gainTime").val(""); $("#gainTime").focus(); return false; } // 短日期,形如 (2003-12-05)判断日期格式符合YYYY-MM-DD标准 function checkDate(strDate){ re=/^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2})$/; if(re.test(strDate)){ return true; } return false } 2.3 长时间,形如 (2003-12-05 13:04:06) function strDateTime(str) { var reg = /^(\d{1,4})(-|\/)(\d{1,2})\2(\d{1,2}) (\d{1,2})\d{1,2})\d{1,2})$/; var r = str.match(reg); if(r==null)return false; var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]); return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]); } --//Email校验 <script type="text/javascript" src="jquery.js"></script>//一定要把jquery.js这个库加载上来 <script language="javascript" type="text/javascript"> function checkemail() { //var temp = document.getElementById("tbEmail");//这句可以用下面的替换 var temp =$('#email').val(); var myreg =/^(?:[a-z\d]+[_\-\+\.]?)*[a-z\d]+@(?:([a-z\d]+\-?)*[a-z\d]+\.)+([a-z]{2,})+$/i; if(temp=="") { alert("plese input email"); } else { if(temp!="") { if(!myreg.exec(temp)) { alert('提示\n\n请输入有效的E_mail!'); $('#email').focus();//把光标聚焦到输入框 return false; } else{ alert("good mail"); } } } } </script> //************************ 连接触发 <a href="javascript:doSubmit();" ></a> 按键触发 <input type="button" value="Submit" οnclick="return isTrueName();"/>