LoneSea's BLOG

Web designer!
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

几个常用的小函数[转]

Posted on 2008-01-19 14:57  LoneSea  阅读(272)  评论(0)    收藏  举报

几个常用的小函数
//函数名:chkemail
//功能介绍:检查是否为Email Address
//参数说明:要检查的字符串
//返回值:0:不是 1:是
function chkemail(a)
{ var i=a.length;
var temp = a.indexOf('@');
var tempd = a.indexOf('.');
if (temp > 1) {
if ((i-temp) > 3){

if ((i-tempd)>0){
return 1;
}

}
}
return 0;
}
//函数名:fucCheckNUM
//功能介绍:检查是否为数字
//参数说明:要检查的数字
//返回值:1为是数字,0为不是数字
function fucCheckNUM(NUM)
{
var i,j,strTemp;
strTemp="0123456789";
if ( NUM.length== 0)
return 0
for (i=0;i<NUM.length;i++)
{
j=strTemp.indexOf(NUM.charAt(i));
if (j==-1)
{
//说明有字符不是数字
return 0;
}
}
//说明是数字
return 1;
}
//函数名:fucCheckTEL
//功能介绍:检查是否为电话号码
//参数说明:要检查的字符串
//返回值:1为是合法,0为不合法
function fucCheckTEL(TEL)
{
var i,j,strTemp;
strTemp="0123456789-()# ";
for (i=0;i<TEL.length;i++)
{
j=strTemp.indexOf(TEL.charAt(i));
if (j==-1)
{
//说明有字符不合法
return 0;
}
}
//说明合法
return 1;
}


//opt1 小数 opt2 负数
//当opt2为1时检查num是否是负数
//当opt1为1时检查num是否是小数
//返回1是正确的,0是错误的
function chknbr(num,opt1,opt2)
{
var i=num.length;
var staus;
//staus用于记录.的个数
status=0;
if ((opt2!=1) && (num.charAt(0)=='-'))
{
//alert("You have enter a invalid number.");
return 0;

}
//当最后一位为.时出错
if (num.charAt(i-1)=='.')
{
//alert("You have enter a invalid number.");
return 0;
}

for (j=0;j<i;j++)
{
if (num.charAt(j)=='.')
{
status++;
}
if (status>1)
{
//alert("You have enter a invalid number.");
return 0;
}
if (num.charAt(j)<'0' || num.charAt(j)>'9' )
{
if (((opt1==0) || (num.charAt(j)!='.')) && (j!=0))
{
//alert("You have enter a invalid number.");
return 0;
}
}
}
return 1;
}

//函数名:chkdate
//功能介绍:检查是否为日期
//参数说明:要检查的字符串
//返回值:0:不是日期 1:是日期
function chkdate(datestr)
{
var lthdatestr
if (datestr != "")
lthdatestr= datestr.length ;
else
lthdatestr=0;

var tmpy="";
var tmpm="";
var tmpd="";
//var datestr;
var status;
status=0;
if ( lthdatestr== 0)
return 0


for (i=0;i<lthdatestr;i++)
{ if (datestr.charAt(i)== '-')
{
status++;
}
if (status>2)
{
//alert("Invalid format of date!");
return 0;
}
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 0;
}
if (!((1<=month) && (12>=month) && (31>=day) && (1<=day)) )
{
//alert ("Invalid month or day!");
return 0;
}
if (!((year % 4)==0) && (month==2) && (day==29))
{
//alert ("This is not a leap year!");
return 0;
}
if ((month<=7) && ((month % 2)==0) && (day>=31))
{
//alert ("This month is a small month!");
return 0;

}
if ((month>=8) && ((month % 2)==1) && (day>=31))
{
//alert ("This month is a small month!");
return 0;
}
if ((month==2) && (day==30))
{
//alert("The Febryary never has this day!");
return 0;
}

return 1;
}
//函数名:chksafe
//功能介绍:检查是否含有"'",'\\',"/"
//参数说明:要检查的字符串
//返回值:0:是 1:不是
function chksafe(a)
{
return 1;
/* fibdn = new Array ("'" ,"\\", "、", ",", ";", "/");
i=fibdn.length;
j=a.length;
for (ii=0;ii<i;ii++)
{ for (jj=0;jj<j;jj++)
{ temp1=a.charAt(jj);
temp2=fibdn[ii];
if (tem';p1==temp2)
{ return 0; }
}
}
return 1;
*/
}

//函数名:chkspc
//功能介绍:检查是否含有空格
//参数说明:要检查的字符串
//返回值:0:是 1:不是
function chkspc(a)
{
var i=a.length;
var j = 0;
var k = 0;
while (k<i)
{
if (a.charAt(k) != " ")
j = j+1;
k = k+1;
}
if (j==0)
{
return 0;
}

if (i!=j)
{ return 2; }
else
{
return 1;
}
}
--------------------------------------------------------------------------

<SCRIPT LANGUAGE=javascript RUNAT=Server>
// ************************************************************************
// Script Compont Object Model
// Design for Active Server Pages
//
// Copyright 2003  Version 1.0
// Made by yinshuguang
// ************************************************************************

function  trim(str)//去掉字符串的首尾空格
{  var tmpStr=new String(str)
    return tmpStr.replace(/(^\s*)|(\s*$)/g, "");
}


function  checkLength(str,minLength,maxLength)//检查字符串的长度是否在允许范围之内
{
  var strTemp=new String(str);
  if (minLength>maxLength){
   var tempInt=maxLength
   maxLength=minLength;
   minLength=tempInt
  }
  if(strTemp.length <=maxLength && strTemp.length >=minLength){
    return true;
  }
  else{
    return false;
  }
}


function checkEMail(str)//检查字符串是否有@符号
{
   var strEMail=new String(str)
   var iHaveAt=0;
   var iHaveDot=0;
   for(var i=0;i<strEMail.length;i++) 
   {
       if  (strEMail.charAt(i)=="@"){
         iHaveAt++;
       }
       if  (strEMail.charAt(i)=="."){
         iHaveDot++;
       }
   }
   if ((iHaveAt==1) && (iHaveDot!=0)){
     return true;
   }
   else{
     return false;
    }
 }
 
 function fixIn(mdl,str){  //检查str中的每个字符中否是mdl中的某一个
    var iSign=0;
    for (var i=0;i<str.length;i++){
       for(var j=0;j<mdl.length;j++){
          if(str.charAt(i)==mdl.charAt(j)){ 
             iSign=1;
             break;
          }
          else{
            iSign=0;
          }
       }
       if(iSign==0){
          break;
       }
     }
    if(iSign==1){
       return true;
    }
    else{
       return false;
    }
 }
 
 
 function isNumber(str){  //检查字符串中是否是数字组成
    var mdl=new String("0123456789");
    if (fixIn(mdl,str)){
      return true;
    }
    else{
      return false;
    }
  }
 
  
 function  isTelephone(str){ //检查字符串中是否是电话号码组成
    var mdl=new String("0123456789-");
    if (fixIn(mdl,str)){
      return true;
    }
    else{
      return false;
    }
  }

 

 

 

function  isFloat(str){  //检查字符串中是否是浮点数组成
   var mdl=new String("0123456789.");
   if (fixIn(mdl,str)){
      return true;
    }
    else{
      return false;
    }
 }
function getRandomStr(){ //返回一个15位的随机字符串
  var ranStr=new String
  var d=new Date
  var x,y
  ranStr=d.valueOf()
  x=Math.random()
  x=x*100
  x=Math.round(x)
  x=(x>=99)?x-1:x
  x=(x<10)?x+10:x
  ranStr+=x.toString()
return ranStr
 }
 

</SCRIPT>