﻿ /*********************************************
1. 表单项不能为空
2. 比较两个表单项的值是否相同
3. 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等
4. 表单项输入数值/长度限定 
5. 中文/英文/数字/邮件地址合法性判断 
6. 限定表单项不能输入的字符
7.  短时间验证，形如 (13:04:06)
*********************************************/


//**********************************************************************
//1. 表单项不能为空
//**********************************************************************
    function CheckEmpty(strIn)
    {
          
         if (strIn.length == 0) 
         {
              return false;
         }
          return true;
    }

//**********************************************************************
//2. 比较两个表单项的值是否相同
//**********************************************************************
    function CheckEqual()
    {
          if (document.form.PWD.value != document.form.PWD_Again.value) 
          {
                alert("您两次输入的密码不一样！请重新输入.");
                document.ADDUser.PWD.focus();
                return false;
          }
        return true;
    }


//**********************************************************************
//3. 表单项只能为数字和"_",用于电话/银行帐号验证上,可扩展到域名注册等
//**********************************************************************
    function isNumber(obj,str)
    { 
        var obj =document.getElementById(obj);
        var Letters = "1234567890abcdefghijklmnopqistyuwxyzABCDEFGHIJKLMNOPQISTYUWXYZ"; //可以自己增加可输入值        var i;
        var c;
        for( i = 0; i < obj.value.length; i ++ )
        {
            c = String.charAt( i );
            if (Letters.indexOf( c ) < 0)
            alert(str);
            obj.focus();
            return false;
        }
        return true;
    }
    
    function CheckTelephone()
    {
        if(!isNumber(document.form.TEL.value)) 
        {
            alert("您的电话号码不合法！");
            document.form.TEL.focus();
            return false;
        }
        return true;
    }



//**********************************************************************
//4. 表单项输入数值/长度限定
//**********************************************************************

    function CheckLength(id,minNum,maxNum) 
    {
        var control=document.getElementById(id);
        if (control.value.length > maxNum || control.value.length < minNum)
        {
            alert("输入数值不能小于"+minNum+"大于"+maxNum);
            control.focus();
            return false;
        }
        return true;
    }


//**********************************************************************
//5. 中文/英文/数字/邮件地址合法性判断
//**********************************************************************

    //英文值检测
    function isEnglish(name)
    {
       for(i=0;i<name.length;i++)
       {
            if(name.charCodeAt(i)<=122&&name.charCodeAt(i)>=90)
            return false;
       } 
       
        return true;
    }

    //中文值检测
    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 isChinese(s)   
    {   
        var errorChar;   
        var badChar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\\'\":;~!#$%()`";   

        //var badChar="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789><,[]{}?/+=|\\'\":;~!#$%()`";   
        errorChar=isCharsInBag(s,badChar)   
        if(errorChar!="")   
        {   
            return false;   
        }     

        return true;   
    }   

    //E-mail值检测
    function isMail(name)
    {
        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 isNumbers(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 CheckAll(Null,EName,CName)
//    {
//        var Null =document.getElementById(Null);
//        var EName =document.getElementById(EName);
//        var CName= document.getElementById(CName);
//        var CreditHour= document.getElementById("<%=txtCreditHour.ClientID%>");
//        var Hours= document.getElementById("<%=txtHours.ClientID%>");
//        if(!CheckEmpty(CreditHour.value))
//        {
//            alert("请填写学分");
//            CreditHour.focus();
//            return false;
//        }
//         if(!CheckEmpty(Hours.value))
//        {
//            alert("请填写学时");
//            Hours.focus();
//            return false;
//        }
//        
//        if(!CheckEmpty(Null.value))
//        {
//            alert("请填写课程编号");
//            Null.focus();
//            return false;
//        }
//        
//        if(!CheckEmpty(CName.value))
//        {
//            alert("课程名称不能为空");
//            CName.focus();
//            return false;
//        }
        
//        if(!CheckEmpty(EName.value))
//        {
//            if(!isEnglish(EName.value)) 
//            {
//                alert("英文名不合法！");
//                EName.focus();
//                return false;
//            }
//            alert("请填写课程英文名");
//            EName.focus();
//            return false;
//        }
        
//        if(!isChinese(CName.value)) 
//        {
//            alert("中文名不合法！");
//            CName.focus();
//            return false;
//        }
//        return true;
//    }
    
    //授课课程页添加时验证不能为空
    function courseTeacherCheckAll(Null,CName)
    {
        var Null =document.getElementById(Null);
        var CName= document.getElementById(CName);
        if(!CheckEmpty(Null.value))
        {
            alert("请填写课程编号");
            Null.focus();
            return false;
        }
        
        if(!CheckEmpty(CName.value))
        {
            alert("请填写教工号");
            CName.focus();
            return false;
        }     
        return true;
    }
    //分别验证
    function isEmail(Email)
    {
        var Email =document.getElementById(Email);
        if(!isMail(Email.value)) 
        {
            alert("您的电子邮件不合法！");
            Email.focus();
            return false;
        }
        return true;
    }
       
    function isENames(id)
    {
        var EName =document.getElementById(id);            
        if(!isEnglish(EName.value)) 
        {
            alert("英文名不合法！");
            EName.focus();
            return false;
        }
        return true;
    }
    
    function isCName(CName)
    {
        var CName= document.getElementById(CName);
        if(!isChinese(CName.value)) 
        {
            alert("中文名不合法！");
            CName.focus();
            return false;
        }
        return true;
    }
    
    function isPublicZipCode(PublicZipCode)
    {
        if(!isNumber(PublicZipCode.value)) 
        {
            alert("邮政编码不合法！");
            PublicZipCode.focus();
            return false;
        }
        return true;
    }


//**********************************************************************
//6. 限定表单项不能输入的字符
//**********************************************************************
    function contain(str,charset)// 字符串包含测试函数
    {
        var i;
        for(i=0;i<charset.length;i++)
        if(str.indexOf(charset.charAt(i))>=0)
        return true;
        return false;
    }
    function CheckContain()
    {
        if ((contain(document.form.NAME.value, "%\(\)><")) || (contain(document.form.MESSAGE.value, 
        "%\(\)><")))
        {
            alert("输入了非法字符");
            document.form.NAME.focus();
            return false;
        }
        return true;
    }



//**********************************************************************
//7.  短时间验证，形如 (13:04:06)
//**********************************************************************
    function isTime(str)
    {
        var regx=/^(\d{1,2}):(\d{1,2}):(\d{1,2})$/;
        if(!regx.test(str))
        {
            alert("时间格式不正确");
            return false
        }
        if (str == "") 
        {
            alert('请填写时间'); 
            return false;
        }

        return true;
    }


//**********************************************************************
//7.  开始时间与结束时间比较验证
//**********************************************************************

    //开始时间不能大于结束时间 
    function isTimeCheck(startTime,endTime)
    {
        isTime(startTime);
        isTime(endTime);
        var arr=startTime.split(":");
        var   hour=arr[0];   
        var   minute=arr[1];   
        var   second=arr[2]; 
        
        var arr2=endTime.split(":");
        var   hour2=arr2[0];   
        var   minute2=arr2[1];   
        var   second2=arr2[2]; 
        
        var stime=new Date();
        var etime=new Date();
        
        stime.setHours(hour,minute,second);
        etime.setHours(hour2,minute2,second2);
        

        if(stime>etime)
        {
            alert("开始时间不能大于结束时间");
            return false
        }
        return true;
    }

