Javascript自定义检测函数大全
2006-12-12 16:50
441 查看
/*****去除字符串头、尾部字符串*****/ functionstrtrim(str){ varpattern=/(^/s+)$/;str=str.replace(pattern,""); varpattern=/(/s+)$/;str=str.replace(pattern,""); returnstr; }
/*****单选按钮检测*****/
functioncheck_radio(check_radio) { for(i=0;iif(check_radio[i].checked==true){ returntrue; } } returnfalse; } /*****是否为单个数字符(0~9)*****/ functionisNumber(str){ if((/^/d$/g).test(str)==true) returntrue; returnfalse; }
/*****是否为整型数字*****/
functionisInteger(str){ if(/^/d+$/.test(str)==true){ returntrue; } returnfalse; }
/*****普通弹出窗口*****/
functionOpenWin(Url,width,height,top,left,winscroll){ window.open(Url,"_blank",'width='+width+',height='+height+',top='+top+',left='+left+',resizable=no,status=no,scrollbars='+winscroll+',toolbar=no,menubar=no,location=no') } /*****显示无模式对话框*****/ functionShowDialog(url,width,height,dialogscroll){ vararr=showModalDialog(url,window,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;center:yes;help:no;resizable:no;status:no;scroll:"+dialogscroll+""); } /*****检查IP地址的合法性*****/ functionisValidIP(str){ str=strtrim(str); temp=str.split('.'); if(temp.length!=4){ returnfalse; } else{ for(i=0;iif((!isInteger(temp[i]))||(temp[i]<0)||(temp[i]>255)){ returnfalse; } } } returntrue; } /*****检查EMAIL地址的合法性*****/ functionCheckEmail(Email) { varfilter=/^/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9]+)*/.[A-Za-z0-9]+$/; return(newRegExp(filter).test(Email)); } /*****检查身份证的合法性*****/ functionisValidIDCard(s){ s=strtrim(s); if(s.length==15){ for(i=0;iif(!(isNumber(s.charAt(i)))){ returnfalse; } returntrue; } elseif(s.length==18){ for(i=0;iif(!(isNumber(s.charAt(i)))){ returnfalse; } returntrue; } returnfalse }
/*****判断是否中文函数*****/ functionischinese(s){ varret=true; for(vari=0;iret=ret&&(s.charCodeAt(i)>=10000); returnret; } /*****数字判断函数*****/ functionisNumber(s) { vardigits="0123456789"; vari=0; varsLength=s.length; while((i<sLength)) { varc=s.charAt(i); if(digits.indexOf(c)==-1)returnfalse; i++; } returntrue; }
/*****屏蔽键盘所有键*****/ functiondocument.onkeydown(){ event.keyCode=0; event.returnvalue=false; } /*****屏蔽鼠标右键*****/ functiondocument.oncontextmenu() { returnfalse; } /*****屏蔽Ctrl+N、Shift+F10、F5刷新、退格键*****/ functionwindow.onhelp(){returnfalse}//屏蔽F1帮助 functionKeyDown(){ if((window.event.altKey)&& ((window.event.keyCode==37)||//屏蔽Alt+方向键← (window.event.keyCode==39))){//屏蔽Alt+方向键→ alert("不准你使用ALT+方向键前进或后退网页!"); event.returnvalue=false; } /*注:这还不是真正地屏蔽Alt+方向键, 因为Alt+方向键弹出警告框时,按住Alt键不放, 用鼠标点掉警告框,这种屏蔽方法就失效了。以后若 有哪位高手有真正屏蔽Alt键的方法,请告知。*/ if((event.keyCode==8)&& (event.srcElement.type!="text"&& event.srcElement.type!="textarea"&& event.srcElement.type!="password")||//屏蔽退格删除键 (event.keyCode==116)||//屏蔽F5刷新键 (event.ctrlKey&&event.keyCode==82)){//Ctrl+R event.keyCode=0; event.returnvalue=false; } if((event.ctrlKey)&&(event.keyCode==78))//屏蔽Ctrl+n event.returnvalue=false; if((event.shiftKey)&&(event.keyCode==121))//屏蔽shift+F10 event.returnvalue=false; if(window.event.srcElement.tagName=="A"&&window.event.shiftKey) window.event.returnvalue=false;//屏蔽shift加鼠标左键新开一网页 if((window.event.altKey)&&(window.event.keyCode==115)){//屏蔽Alt+F4 window.showModelessDialog("about:blank","","dialogWidth:1px;dialogheight:1px"); returnfalse;} } /*****屏蔽浏览器右上角“最小化”“最大化”“关闭”键*****/ functionwindow.onbeforeunload() { if(event.clientX>document.body.clientWidth&&event.clientY<0||event.altKey) { window.event.returnvalue=""; } } /*****屏蔽F5键*****/ functiondocument.onkeydown() { if(event.keyCode==116) { event.keyCode=0; event.cancelBubble=true; returnfalse; } } /*****表单项不能为空*****/ functionCheckForm() { if(document.form.name.value.length==0){ alert("请输入您姓名!"); document.form.name.focus(); returnfalse; } returntrue; } /*****比较两个表单项的值是否相同*****/ functionCheckForm() if(document.form.PWD.value!=document.form.PWD_Again.value){ alert("您两次输入的密码不一样!请重新输入."); document.ADDUser.PWD.focus(); returnfalse; } returntrue; } /*****表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等*****/ functionisNumber(String) { varLetters="1234567890-";//可以自己增加可输入值 vari; varc; if(String.charAt(0)=='-') returnfalse; if(String.charAt(String.length-1)=='-') returnfalse; for(i=0;i<String.length;i++) { c=String.charAt(i); if(Letters.indexOf(c)<0) returnfalse; } returntrue; } functionCheckForm() { if(!isNumber(document.form.TEL.value)){ alert("您的电话号码不合法!"); document.form.TEL.focus(); returnfalse; } returntrue; } /*****表单项输入数值/长度限定*****/ functionCheckForm() { if(document.form.count.value>100||document.form.count.value<1) { alert("输入数值不能小于零大于100!"); document.form.count.focus(); returnfalse; } if(document.form.MESSAGE.value.length<10) { alert("输入文字小于10!"); document.form.MESSAGE.focus(); returnfalse; } returntrue; } /*****中文/英文/数字/邮件地址合法性判断*****/ functionisEnglish(name)//英文值检测 { if(name.length==0) returnfalse; for(i=0;i<name.length;i++){ if(name.charCodeAt(i)>128) returnfalse; } returntrue; } functionisChinese(name)//中文值检测 { if(name.length==0) returnfalse; for(i=0;i<name.length;i++){ if(name.charCodeAt(i)>128) returntrue; } returnfalse; } functionisMail(name)//E-mail值检测 { if(!isEnglish(name)) returnfalse; i=name.indexOf("@"); j=name.lastIndexOf("@"); if(i==-1) returnfalse; if(i!=j) returnfalse; if(i==name.length) returnfalse; returntrue; } functionisNumber(name)//数值检测 { if(name.length==0) returnfalse; for(i=0;i<name.length;i++){ if(name.charAt(i)<"0"||name.charAt(i)>"9") returnfalse; } returntrue; } functionCheckForm() { if(!isMail(form.Email.value)){ alert("您的电子邮件不合法!"); form.Email.focus(); returnfalse; } if(!isEnglish(form.name.value)){ alert("英文名不合法!"); form.name.focus(); returnfalse; } if(!isChinese(form.cnname.value)){ alert("中文名不合法!"); form.cnname.focus(); returnfalse; } if(!isNumber(form.PublicZipCode.value)){ alert("邮政编码不合法!"); form.PublicZipCode.focus(); returnfalse; } returntrue; } /*****限定表单项不能输入的字符*****/ functioncontain(str,charset)//字符串包含测试函数 { vari; for(i=0;i<charset.length;i++) if(str.indexOf(charset.charAt(i))>=0) returntrue; returnfalse; } functionCheckForm() { if((contain(document.form.NAME.value,"%/(/)><"))||(contain(document.form.MESSAGE.value,"%/(/)><"))) { alert("输入了非法字符"); document.form.NAME.focus(); returnfalse; } returntrue; }
/*****检测手机号码*****/ functionCheckMobile(Mobile){ varfilter=/^13[012356789]{1}[0-9]{8}$/; if(!filter.test(Mobile))returnfalse; returntrue; } /*****检测电话号码*****/ functionCheckPhone(Phone){ varArryPhone=Phone.split("-") varLen=ArryPhone.length; //最多2个"-" if(Len>3)returnfalse; //全部为数字 for(vark=0;k<Len;k++) { if(ArryPhone[k].replace(//d/gi,"")!="")returnfalse; } //"-"不能在最前面 if((Len>1)&&(ArryPhone[0].length<1))returnfalse; returntrue; } functionCheckPhone2(Phone){ varArryPhone=Phone.split("-") varLen=ArryPhone.length; if(Len>3)returnfalse; for(vark=0;k<Len;k++) { if(ArryPhone[k].replace(//d/gi,"")!="")returnfalse; } if((Len>1)&&(ArryPhone[0].length<1))returnfalse; if(Len==1) { if(!((ArryPhone[0].length>6)&&(ArryPhone[0].length<9)))returnfalse; } if(Len==2) { if(ArryPhone[0].length>4) { if(!((ArryPhone[0].length>6)&&(ArryPhone[0].length<9)))returnfalse; if(ArryPhone[1].length>4)returnfalse; } else { if((ArryPhone[0].length>4)||(ArryPhone[0].length<3))returnfalse; if(!((ArryPhone[1].length>6)&&(ArryPhone[1].length<9)))returnfalse; } } if(Len==3) { if((ArryPhone[0].length>4)||(ArryPhone[0].length<3))returnfalse; if(!((ArryPhone[1].length>6)&&(ArryPhone[1].length<9)))returnfalse; if(ArryPhone[2].length>4)returnfalse; } returntrue; } /*****检测Email地址*****/ functionCheckEmail(Email) { varfilter=/^/w+((-/w+)|(/./w+))*/@[A-Za-z0-9]+((/.|-)[A-Za-z0-9]+)*/.[A-Za-z0-9]+$/; return(newRegExp(filter).test(Email));
相关文章推荐
- 常用的JavaScript自定义函数大全
- 常用的JavaScript自定义函数大全
- 常用Javascript检测函数:检测对像,函数,ID是否存在
- Microsoft SQL Server 自定义函数整理大全--转【叶子】的文章
- 实践中Javascript使用RegExp.$1导致trim()自定义函数的一个Bug
- Javascript isArray 数组类型检测函数
- javascript自定义函数参数传递为字符串格式
- 如何检测 JavaScript 中的自定义全局变量
- [转贴]一些经常会用到的Javascript检测函数
- javascript常用函数大全 + javascript事半功倍/速成系列 + javascript技巧
- 一些经常会用到的Javascript检测函数
- javascript 自定义动画函数
- 一些经常会用到的Javascript检测函数
- javascript常用函数大全
- 自定义取值距离的javascript random()函数
- JavaScript验证函数大全
- 最常用的10个javascript自定义函数 选项
- 一些经常会用到的Javascript检测函数
- javascript复习-定义对象/命名函数/对象字面量/jquery自定义插件
- Javascript自定义函数判断网站访问类型是PC还是移动终端