X龙@China .Net 'blog

需要的不仅仅是工作,而是通过努力得来的美好将来。
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

JS 常用函数 常用验证函数

Posted on 2011-03-08 13:22  X龙  阅读(296)  评论(0编辑  收藏  举报
/*  
       名字:Common.js  
       功能:通用javascript脚本函数库  
       包括:  
            1.Trim(str)--去除字符串两边的空格  
            2.XMLEncode(str)--对字符串进行XML编码  
            3.ShowLabel(str,str)--鼠标提示功能(显示字符,提示字符)  
            4.IsEmpty(obj)--验证输入框是否为空  
            5.IsInt(objStr,sign,zero)--验证是否为整数  
            6.IsFloat(objStr,sign,zero)--验证是否为浮点数  
            7.IsEnLetter(objStr,size)--验证是否为26个字母  
              
            8.strlen(str):获取字符串的长度  
              
            9.isTel(String)判断是否是电话号码  
              
            10.isNumber(name)判断输入的是否是数  
              
            11.isEnglish(name)判断输入的是否是英  
              
            12.isChinese(name)判断是否是中文  
              
            13.isMail(name)判断是否是EMAIL  
              
            14.contain(str,charset)限定表单项不能输入的字符  
*/  
/*字符串操作  
Trim(string):去除字符串两边的空格  
*/  
/*  
  1.LTrim(string):去除左边的空格  
*/  
function LTrim(str)   
{   
    
var whitespace = new String(" /t/n/r");   
    
var s = new String(str);   
       
    
if (whitespace.indexOf(s.charAt(0)) != -1)   
    {   
        
var j=0, i = s.length;   
        
while (j < i && whitespace.indexOf(s.charAt(j)) != -1)   
        {   
            j
++;   
        }   
        s 
= s.substring(j, i);   
    }   
    
return s;   
}   
    
/*  
  2.RTrim(string):去除右边的空格  
*/  
function RTrim(str)   
{   
    
var whitespace = new String(" /t/n/r");   
    
var s = new String(str);   
    
    
if (whitespace.indexOf(s.charAt(s.length-1)) != -1)   
    {   
        
var i = s.length - 1;   
        
while (i >= 0 && whitespace.indexOf(s.charAt(i)) != -1)   
        {   
            i
--;   
        }   
        s 
= s.substring(0, i+1);   
    }   
    
return s;   
}   
    
/*  
  3.Trim(string):去除前后空格  
*/  
function Trim(str)   
{   
    
return RTrim(LTrim(str));   
}   
/*  
  XMLEncode(string):对字符串进行XML编码  
*/  
function XMLEncode(str)   
{   
       str
=Trim(str);   
       str
=str.replace("&","&");   
       str
=str.replace("<","<");   
       str
=str.replace(">",">");   
       str
=str.replace("'","'");   
       str
=str.replace("\"",""");   
       return str;   
}   
/*  
验证类函数  
*/  
function IsEmpty(obj)   
{   
    obj=document.getElementsByName(obj).item(0);   
    if(Trim(obj.value)==
"")   
    {   
        alert(
"输入不能为空。");           
        if(obj.disabled==false && obj.readOnly==false)   
        {   
            obj.focus();   
        }   
    }   
}   
    
/*  
  IsInt(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)  
  功能:判断是否为整数、正整数、负整数、正整数+0、负整数+0  
*/  
//function IsInt(objStr,sign,zero)   
//{   
//    var reg;       
//    var bolzero;       
//       
//    if(Trim(objStr)==
"")   
//    {   
//        return false;   
//    }   
//    else   
//    {   
//        objStr=objStr.toString();   
//    }       
//       
//    if((sign==null)||(Trim(sign)==
""))   
//    {   
//        sign=
"+-";   
//    }   
//       
//    if((zero==null)||(Trim(zero)==
""))   
//    {   
//        bolzero=false;   
//    }   
//    else   
//    {   
//        zero=zero.toString();   
//        if(zero==
"0")   
//        {   
//            bolzero=true;   
//        }   
//        else   
//        {   
//            alert(
"检查是否包含0参数,只可为(空、0)");   
//        }   
//    }   
//    switch(sign)   
//    {   
//        case 
"+-":   
//            //整数   
//           // reg=/(^-?|^/+?)/d+$/;               
//           reg = /^(-|\+)?\d+$/;   
//            break;   
//        case 
"+":    
//            if(!bolzero)              
//            {   
//                //正整数   
//                //reg=/^/+?[0-9]*[1-9][0-9]*$/;   
//                reg = /^\d+$/;   
//            }   
//            else   
//            {   
//                //正整数+0   
//                reg = /^\d+$/;   
//               // reg=/^/+?[0-9]*[0-9][0-9]*$/;   
//            }   
//            break;   
//        case 
"-":   
//            if(!bolzero)   
//            {   
//                //负整数   
//                reg=/^-[0-9]*[1-9][0-9]*$/;   
//            }   
//            else   
//            {   
//                //负整数+0   
//                //reg=/^-/d+$/;   
//                reg=/^-[0-9]*[0-9][0-9]*$/;   
//            }               
//            break;   
//        default:   
//            alert(
"检查符号参数,只可为(空、+-)");   
//            return false;   
//            break;   
//    }   
//    var r=objStr.match(reg);   
//    if(r==null)   
//    {   
//        return false;   
//    }   
//    else   
//    {           
//        return true;        
//    }   
//}   
/*  
  IsFloat(string,string,int or string):(测试字符串,+ or - or empty,empty or 0)  
  功能:判断是否为浮点数、正浮点数、负浮点数、正浮点数+0、负浮点数+0  
*/  
function IsFloat(objStr,sign,zero)   
{   
    var reg;       
    var bolzero;       
       
    if(Trim(objStr)==
"")   
    {   
        return false;   
    }   
    else  
    {   
        objStr=objStr.toString();   
    }       
       
    if((sign==null)||(Trim(sign)==
""))   
    {   
        sign=
"+-";   
    }   
       
    if((zero==null)||(Trim(zero)==
""))   
    {   
        bolzero=false;   
    }   
    else  
    {   
        zero=zero.toString();   
        if(zero==
"0")   
        {   
            bolzero=true;   
        }   
        else  
        {   
            alert(
"检查是否包含0参数,只可为(空、0)");   
        }   
    }   
    switch(sign)   
    {   
        case 
"+-":   
            //浮点数   
            reg=/^((-?|/+?)/d+)(/./d+)?$/;   
            break;   
        case 
"+":    
            if(!bolzero)              
            {   
                //正浮点数   
                reg=/^/+?(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$/;   
            }   
            else  
            {   
                //正浮点数+0   
                reg=/^/+?/d+(/./d+)?$/;   
            }   
            break;   
        case 
"-":   
            if(!bolzero)   
            {   
                //负浮点数   
                reg=/^-(([0-9]+/.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*/.[0-9]+)|([0-9]*[1-9][0-9]*))$/;   
            }   
            else  
            {   
                //负浮点数+0   
                reg=/^((-/d+(/./d+)?)|(0+(/.0+)?))$/;   
            }               
            break;   
        default:   
            alert(
"检查符号参数,只可为(空、+-)");   
            return false;   
            break;   
    }   
       
    var r=objStr.match(reg);   
    if(r==null)   
    {   
        return false;   
    }   
    else  
    {           
        return true;        
    }   
}   
/*字符串操作  
strlen(str):获取字符串的长度  
*/  
function strlen(str) {   
    var len = 0;   
    for(var i = 0; i < str.length; i++) {   
        len += str.charCodeAt(i) < 0 || str.charCodeAt(i) > 255 ? (charset == 'utf-8' ? 3 : 2) : 1;   
    }   
    return len;   
}   
/*  
* 判断是否是电话号码  
*/  
function isTel(String)   
{    
    var Letters = 
"1234567890-"; //可以自己增加可输入值   
    var i;   
    var c;   
    if(String.charAt( 0 )=='-')   
       return false;   
    if( String.charAt( String.length - 1 ) == '-' )   
       return false;   
    for( i = 0; i < String.length; i ++ )   
    {   
        c = String.charAt( i );   
        if (Letters.indexOf( c ) < 0)   
        return false;   
    }   
    return true;   
}   
/*  
* 判断输入的是否是数字  
*/  
function isNumber(name) //数值检测   
{   
    if(name.length == 0)   
      return false;   
    for(i = 0; i < name.length; i++) {   
        if(name.charAt(i) < 
"0" || name.charAt(i) > "9")   
             return false;   
    }   
    return true;   
}   
/*  
* 判断输入的是否是英文  
*/  
function isEnglish(name) //英文值检测   
{   
    if(name.length == 0)   
       return false;   
    for(i = 0; i < name.length; i++) {   
    if(name.charCodeAt(i) > 128)   
         return false;   
    }   
    return true;   
}   
/*  
* 判断是否是中文  
*/  
function isChinese(name) //中文值检测   
{   
    if(name.length == 0)   
      return false;   
    for(i = 0; i < name.length; i++) {   
    if(name.charCodeAt(i) > 128)   
      return true;   
    }   
    return false;   
}   
/*  
* 判断是否是EMAIL  
*/  
function isMail(name) // E-mail值检测   
{   
    if(! isEnglish(name))   
      return false;   
         
    i = name.indexOf(
"@");   
    j = name.lastIndexOf(
"@");   
    if(i == -1)   
     return false;   
        
    if(i != j)   
     return false;   
        
    if(i == name.length)   
     return false;   
        
    return true;   
}   
/*  
* 限定表单项不能输入的字符  
*/  
function contain(str,charset)// 字符串包含测试函数   
{   
    var i;   
    for(i=0;i<charset.length;i++)   
    if(str.indexOf(charset.charAt(i))>=0)   
    return true;   
    return false;   
}  
点击这里给我发消息http://wp.qq.com/index.html