js处理字符函数 by zhouwillpower
function CheckInput(Str, Title, Format, LengthMin, LengthMax)
{
//检测并初始化输入参数
if( Title == '' )
{
return false;
}
if( Str == '' && LengthMin != 0 )
{
return false;
}
if( Format == '' )
{
Format = 'ELSE';
}
else
{
Format = Format.toUpperCase();
}
if( LengthMin == '' ) LengthMin = 0;
if( LengthMax == '' ) LengthMax = 255;
//判断是否合法
if(Str!='')
{
if( Str.length < LengthMin )
{
return false;
}
if( Str.length > LengthMax )
{
window.alert(Title+"长度大于"+LengthMax+"个字符!");return false;
}
if( Format == 'DATE')
{
if(!CheckDate(Str))
{
return false;
}
}
if( Format == 'EMAIL')
{
if(!CheckEmail(Str))
{
return false;
}
}
if( Format == 'URL')
{
if(!CheckURL(Str))
{
return false;
}
}
if( Format == 'POST')
{
if(!CheckPost(Str))
{
return false;
}
}
if( Format == 'PHONE')
{
if(!CheckPhone(Str))
{
return false;
}
}
if( Format == 'PC')
{
if(!CheckPC(Str))
{
return false;
}
}
if( Format == 'NUM')
{
if(!CheckNum(Str))
{
return false;
}
}
if( Format == 'HZ')
{
if(!CheckHZ(Str))
{
return false;
}
}
return true;
}
return true;
}
//函数名:chkdate
//功能介绍:检查是否为日期
//参数说明:要检查的字符串
//返回值:0:不是日期 1:是日期
function CheckDate(datestr)
{
var lthdatestr
if (datestr != "")
lthdatestr= datestr.length ;
else
lthdatestr=0;
var tmpy="";
var tmpm="";
var tmpd="";
var status;
status=0;
if ( lthdatestr== 0) return false;
for (i=0;i<lthdatestr;i++)
{ if (datestr.charAt(i)== '-')
{
status++;
}
if (status>2)
{
//alert("Invalid format of date!");
return false;
}
if ((status==0) && (datestr.charAt(i)!='-'))
{
tmpy=tmpy+datestr.charAt(i)
}
if ((status==1) && (datestr.charAt(i)!='-'))
{
tmpm=tmpm+datestr.charAt(i)
}
if ((status==2) && (datestr.charAt(i)!='-'))
{
tmpd=tmpd+datestr.charAt(i)
}
}
year=new String (tmpy);
month=new String (tmpm);
day=new String (tmpd)
//tempdate= new String (year+month+day);
//alert(tempdate);
if ((tmpy.length!=4) || (tmpm.length>2) || (tmpd.length>2))
{
//alert("Invalid format of date!");
return false;
}
if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
{
//alert ("Invalid month or day!");
return false;
}
if (!((year % 4)==0) && (month==2) && (day==29))
{
//alert ("This is not a leap year!");
return false;
}
if ((month<=7) && ((month % 2)==0) && (day>=31))
{
//alert ("This month is a small month!");
return false;
}
if ((month>=8) && ((month % 2)==1) && (day>=31))
{
//alert ("This month is a small month!");
return false;
}
if ((month==2) && (day==30))
{
//alert("The Febryary never has this day!");
return false;
}
return true;
}
//是否Email格式
function CheckEmail(EmailText)
{
var checkOk="@";
var checkStr=EmailText;
var allValid=true;
var decPoints=0;
var allNum="";
if(checkStr.charAt(0)=='@')
return(false);
if(checkStr.charAt(checkStr.length-1)=='@')
return(false);
if(checkStr.charAt(checkStr.length-1)=='.')
return(false);
a_valid=0;
a_count=0;
d_valid=0;
for(i=0;i<checkStr.length;i++)
{
ch=checkStr.charAt(i);
if(ch=='@')
{a_valid=1;a_count++;}
if(ch=='.')
{d_valid=1;}
}
if(a_count>1)
return(false);
if(a_valid==1&&d_valid==1)
return(true);
else
return(false);
}
//是否URL格式
function CheckURL(Str)
{
if ( Str.length < 7 ) return false;
Str = Str.toUpperCase();
if ( Str.substr( 0,7) != 'HTTP://') return false;
if ( Str.indexOf( '.') == -1 ) return false;
return true;
}
//是否邮编格式
function CheckPost(Str)
{
var validChar = "0123456789";
var i;
if ( Str.length < 6 ) return false;
for (i=0;i<Str.length;i++)
{
var c = Str.charAt(i);
if ( validChar.indexOf( Str.charAt(i) ) == -1) return false;
}
return true;
}
//是否电话传真格式
function CheckPhone(Str)
{
var validChar = "0123456789-";
var i;
for (i = 0; i < Str.length; i++)
{
var c = Str.charAt(i);
if ( validChar.indexOf(c) == -1) return false;
}
return true;
}
//是否身份证格式
function CheckPC(Str)
{
var validChar = "0123456789";
var i;
if ( Str.length != 15 && Str.length != 18 && Str.length != 0 ) return false;
for (i=0;i<Str.length;i++)
{
var c = Str.charAt(i);
if ( validChar.indexOf( Str.charAt(i) ) == -1) return false;
}
return true;
}
//是否是纯数字
function CheckNum(Str)
{
var validChar = "-0123456789";
var i;
for (i = 0; i < Str.length; i++)
{
var c = Str.charAt(i);
if (validChar.indexOf(c) == -1) return false;
}
return true;
}
//是否纯中文
function CheckHZ(param)
{
var reg = /[^u4E00-u9FA5]/g;
if(reg.test(param)) return false;
return true;
}
//CheckInput()函数结束------------------------
//去掉字符串内所有多余空格
function Alltrim(str)
{
while (str.charAt(0)==" "||str.charAt(0)==" ")
{
str=str.substr(1);
}
while (str.charAt(str.length-1)==" "||str.charAt(0)==" ")
{
str=str.substr(0,str.length-1);
}
return(str);
}
//所有被选中的复选框计数
function CountChkBoxDeleItem()
{
var j = 0;
for(i=0;i<document.all.length;i++)
{
if(document.all(i).type=="checkbox")
{
if(document.all(i).checked)
{j++;}
}
}
return j;
}
//字符串长度检测
function CheckStringLength(InputValue,TitleName,MinStrLength,MaxStrLength)
{
var CheckedValue = Alltrim(InputValue);
if(CheckedValue.length==0)
{
window.alert(TitleName+"不能为空!");
return false;
}
if(CheckedValue.length > MaxStrLength)
{
window.alert(TitleName+"长度不能大于"+MaxStrLength+"个字符!");
return false;
}
if(CheckedValue.length < MinStrLength)
{
window.alert(TitleName+"长度不能小于" + MinStrLength + "个字符");
return false;
}
return true;
}
//选中所有复选框
function CheckBox_SeleAll()
{
for(i=0;i<document.all.length;i++)
{
if(document.all.item(i).type=="checkbox")
{
document.all.item(i).checked = true;
}
}
}
//
function CheckBox_ClearAll()
{
for(i=0;i<document.all.length;i++)
{
if(document.all.item(i).type=="checkbox")
{
document.all.item(i).checked = false;
}
}
}
//
posted on 2006-06-24 13:44 zhouwillpower 阅读(1027) 评论(0) 收藏 举报
浙公网安备 33010602011771号