posts - 0, comments - 77, trackbacks - 0, articles - 356
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

JAVASCRIPT校验大全

Posted on 2008-11-03 14:28 semovy 阅读(453) 评论(0)  编辑  收藏 所属分类: JavaScript
技巧
JAVASCRIPT校验大全
<!--
///////////////////////////////////////////////////////////////////////////////
//
// 张树林 - 慧佳工作室
//
// Module Name:     public.js
// Abstract:        各种校验程序
// Version:         1.0
// Date                                2005-06-11
// Author:          woods·zhang
// Email:           hoojar@163.com 
// MSN:             hoojar@hotmail.com
// Website:         http://www.hoojar.com/
// Copyright 2001-2006, Hoojar studio All Rights Reserved
//
// 版权 2001-2006,慧佳工作室所有版权保护

//The software for free software, allowing use, copy, 
//modify and distribute the software and files. Any 
//use of this software must place a copy of all the 
//above copyright notice. By the software Huijia studio 
//maintenance, if you have any queries please contact us.
//Thank you. 
//
//此软件为自由软件,允许使用、拷贝、修改、分发本软件及其文档。
//任何使用此软件的地方都得出现以上版权通告所有副本。此软件由
//慧佳工作室维护,如果您有什么疑问请与我们联系。谢谢使用。
//
///////////////////////////////////////////////////////////////////////////////
var IsFireFox = document.getElementById &&! document.all;//判断是否为FireFox

//页面里回车到下一控件的焦点
function Enter2Tab(e)
{
        try
        {
                var ob = IsFireFox ? e.target : event.srcElement;
                if(ob.tagName == "INPUT" &&
                (
                ob.type == "text"     ||
                ob.type == "password" ||
                ob.type == "checkbox" ||
                ob.type == "radio"
                )   ||
                ob.tagName == "SELECT")
                {
                        var key = IsFireFox ? e.which : event.keyCode;
                        if (key == 13)
                        {
                                if (IsFireFox)
                                {
                                        event.which = 9;
                                }
                                else
                                {
                                        event.keyCode = 9;
                                }
                        }
                }
        }
        catch(E){}
}
//打开此功能请取消下行注释
//document.onkeydown = Enter2Tab;

//ajax对象创建
function AjaxLib()
{
        var objXMLHttp;
        if (window.XMLHttpRequest)
        {
                objXMLHttp = new XMLHttpRequest();
        }
        else
        {
                //使用该代码,出现问题 var MSXML = [’MSXML2.XMLHTTP.5.0’, ’MSXML2.XMLHTTP.4.0’, ’MSXML2.XMLHTTP.3.0’, ’MSXML2.XMLHTTP’, ’Microsoft.XMLHTTP’];
                var MSXML = [’MSXML2.XMLHTTP’, ’Microsoft.XMLHTTP’];
                for(var n = 0; n < MSXML.length; n ++)
                {
                        try
                        {
                                objXMLHttp = new ActiveXObject(MSXML[n]);        
                                break;
                        }
                        catch(e)
                        {
                        }
                }
                if (!objXMLHttp && typeof XMLHttpRequest != ’undefined’) 
                {
                        objXMLHttp = new XMLHttpRequest();
                }
        }
        return objXMLHttp;
}

//判断用户名是否符合标准
function UserNameIsOk(ssn)
{
        var re = /^[0-9a-z][w-.]*[0-9a-z]$/i;
        return re.test(ssn) ? true : false;
}

//_______全选择__________
function SelectAll()
{
    var empty;
        var f = document.forms[0];
    for (var i = 0; i < f.length; i++)
    {
        empty = f[i];
        if (empty.type == "checkbox" && empty.disabled == false)
            empty.checked = true;
    }
}

//__________返选择_________
function SelectReverse()
{
    var empty;
        var f = document.forms[0];
    for (var i = 0; i < f.length; i++)
    {
        empty = f[i];
        if (empty.type == "checkbox" && empty.disabled == false)
                if(empty.checked == true)
                {
                   empty.checked = false;
                }
                else
                {
                   empty.checked = true;
                }
    }
}

//提交查询内容 submit search find content
function GoPage(pn)
{
        try
        {
                document.forms[0].page.value = pn;
                document.forms[0].submit();
        }
        catch(E)
        {
                document.forms[1].page.value = pn;
                document.forms[1].submit();
        }
}

function WoodsAlert(ob, tip)
{
        alert(tip);
        //ob.value = "";
        ob.focus();
}

//__________处理特殊字符________________
function invalid_keyword()
{
    var keyword = new Array("<", ">", "%", "’", """);
    var f, ob;
    for (var form = 0; form < document.forms.length; form++)
    {
        f = document.forms[form];
        for (var i = 0; i < f.length; i++)
        {
            ob = f[i];
            if (ob.type == "text" && ob.disabled == false)
            {
               for (j = 0; j < keyword.length; j++)
               {
                    if (ob.value.indexOf(keyword[j]) != -1)
                    {
                        alert("在输入框聚焦处发现非法字符[" + keyword[j] + "]。");
                        //ob.value = "";
                        ob.focus();
                        return false;
                    }
               }
               ob.value = Trim(ob.value);
            }
        }
    }
    return true;
}
function IsTime(str)
//__________判断是否为时间字符串________________________
{
        var a = str.match(/^(d{1,2})(:)?(d{1,2})2(d{1,2})$/);
        if (a == null) {alert(’输入的参数不是时间格式’); return false;}
        if (a[1]>24 || a[3]>60 || a[4]>60)
        {
          return false
        }
        return true;
}

function IsDate(str)
//_________是否为日期(YYYY-MM-DD)类型字符串_________________________
{
        var r = str.match(/^(d{1,4})(-|/)(d{1,2})2(d{1,2})$/);
        if (r == null) return false;
        var d = new Date(r[1], r[3]-1, r[4]);
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]);
}

function IsBigCurrentDate(str)
//_________________判断用户给出的日期是否大于当前日期______________________________
{
        var today = new Date();
        var tY = String(today.getFullYear());
        var tM = String(today.getMonth() + 1);
        (tM.length <= 1) ? tM = "0" + tM : tM = tM;

        var tD = String(today.getDate());
        (tD.length <= 1) ? tD = "0" + tD : tD = tD;

        var tH = String(today.getHours());
        (tH.length <= 1) ? tH = "0" + tH : tH = tH;

        var tM1 = String(today.getMinutes());
        (tM1.length <= 1) ? tM1 = "0" + tM1 : tM1 = tM1;

        var tdate = tY + "-" + tM + "-" + tD + " " + tH + ":" + tM1 + ":59";//zhuweisong 添加秒的叛断
        if (str > tdate)
        {
                return true;
        }
        else
        {
                return false;
        }
}

function IsDateTime(str)
//____________是否为时间日期类型__________________________________
{
        var reg = /^(d{1,4})(-|/)(d{1,2})2(d{1,2}) (d{1,2}):(d{1,2}):(d{1,2})$/;
        var r = str.match(reg);
        if (r == null) return false;
        var d= new Date(r[1], r[3]-1,r[4],r[5],r[6],r[7]);
        return (d.getFullYear()==r[1]&&(d.getMonth()+1)==r[3]&&d.getDate()==r[4]&&d.getHours()==r[5]&&d.getMinutes()==r[6]&&d.getSeconds()==r[7]);
}

function IsEmail(mail)
//_____________判断是否是有效的EMAIL地址________________________________
{
        return(new RegExp(/^w+((-w+)|(.w+))*@[A-Za-z0-9]+((.|-)[A-Za-z0-9]+)*.[A-Za-z0-9]+$/).test(mail));
}

function IsIp(s)
//________________判断是否为有效IP地址_________________________________
{
        var check = function(v)
        {
                try
                {
                        return (v <= 255 && v >= 0);
                }
                catch(x)
                {
                        return false;
                }
        }
        var re = s.split(".")
        return (re.length==4)?(check(re[0]) && check(re[1]) && check(re[2]) && check(re[3])):false
}


//_________判断输入的是否为汉字___________begin__________
function isCharsInBag (s, bag)
{
        var i,c;
        for (i = 0; i < s.length; i++)
        {
                c = s.charAt(i);//字符串s中的字符
                if (bag.indexOf(c) > -1)
                return c;
        }
        return "";
}

function IsCn(s)
{
        var errorChar;
        var badChar = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|’":;~!#$%()`";
        errorChar = isCharsInBag(s, badChar)
        if (errorChar != "" )
        {
                return false;
        }
        return true;
}
//_________判断输入的是否为汉字___________end__________

//________函数功能:判断输入的字符串是不是英文__________begin___________
function isCharsInBagEn (s, bag)
{
        var i,c;
        for (i = 0; i < s.length; i++)
        {
                c = s.charAt(i);//字符串s中的字符
                if (bag.indexOf(c) <0)
                return c;
        }
        return "";
}

function IsEn(s)
{
        var errorChar;
        var badChar = " ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
        errorChar = isCharsInBagEn(s, badChar)
        return (errorChar != "" ) ? false : true;
}
//________函数功能:判断输入的字符串是不是英文__________end___________

/**//********************
函数名称:IsTelephone
函数功能:固话,手机号码检查函数,合法返回true,反之,返回false
函数参数:obj,待检查的号码
检查规则:
  (1)电话号码由数字、"("、")"和"-"构成
  (2)电话号码为3到8位
  (3)如果电话号码中包含有区号,那么区号为三位或四位
  (4)区号用"("、")"或"-"和其他部分隔开
  (5)移动电话号码为11或12位,如果为12位,那么第一位为0
  (6)11位移动电话号码的第一位和第二位为"13"
  (7)12位移动电话号码的第二位和第三位为"13"
********************/
function IsTelephone(obj)
{
        var pattern=/(^([0+]d{2,3})d{3,4}-d{3,8}$)|(^([0+]d{2,3})d{3,4}d{3,8}$)|(^([0+]d{2,3}){0,1}13d{9}$)|(^d{3,4}d{3,8}$)|(^d{3,4}-d{3,8}$)/;
        return (pattern.test(obj)) ? true : false;
}

/**//********************
函数名称:IsLegality
函数功能:检查字符串的合法性,即是否包含" ’字符,包含则返回false;反之返回true
函数参数:obj,需要检测的字符串
********************/
function IsLegality(obj)
{
        var intCount1 = obj.indexOf(""",0);
        var intCount2 = obj.indexOf("’",0);
        return (intCount1 > 0 || intCount2 > 0) ? false : true;
}

/**//********************
函数名称:IsNumber
函数功能:检测字符串是否全为数字
函数参数:str,需要检测的字符串
********************/
function IsNumber(str)
{
        var number_chars = "1234567890";
        var i;
        for (i = 0; i < str.length; i++)
        {
                if (number_chars.indexOf(str.charAt(i))==-1) return false;
        }
        return true;
}

/**//********************
函数名称:Trim
函数功能:去除字符串两边的空格
函数参数:str,需要处理的字符串
********************/
function Trim(str)
{
        return str.replace(/(^s*)|(s*$)/g, "");
}

/**//********************
函数名称:LTrim
函数功能:去除左边的空格
函数参数:str,需要处理的字符串
********************/
function LTrim(str)
{
        return str.replace(/(^s*)/g, "");
}

/**//********************
函数名称:RTrim
函数功能:去除右边的空格
函数参数:str,需要处理的字符串
********************/
function RTrim(str)
{
        return this.replace(/(s*$)/g, "");
}

/**//********************
函数名称:IsNull
函数功能:判断给定字符串是否为空
函数参数:str,需要处理的字符串
********************/
function IsNull(str)
{
        return (Trim(str) == "") ? false : true;
}

//获取cookie
function getCookie(name)
{
        var search = name + "="
        if(document.cookie.length > 0)
        {
                offset = document.cookie.indexOf(search)
                if(offset != -1)
                {
                        offset += search.length
                        end = document.cookie.indexOf(";", offset)
                        if(end == -1) end = document.cookie.length
                        return unescape(document.cookie.substring(offset, end))
                }
                else return "";
        }
}

//存储cookie
function setCookie(name, value, days)
{
        if (days)
        {
                var date = new Date();
                date.setTime(date.getTime() + (days*24*60*60*1000));
                var expires = ";expires=" + date.toGMTString();
        }
        else var expires = "";
        document.cookie = name + "=" + value + expires + ";path=/;domain=" + document.location.hostname;
}

function eventFalse()
{
        window.event.returnValue = false;
}

//document.oncontextmenu = eventFalse;
//document.onselectstart = eventFalse;
//-->

只有注册用户登录后才能发表评论。


网站导航: