您的位置:首页 > Web前端 > JavaScript

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));



                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: