﻿//画面入力项目检测
//check 项目
var checkNum   = "num";
var checkEmail = "email";
var checkTel   = "tel";
var checkNull   = "null";
var checkSelNull   = "selnull";
var checkSDate   = "date";
var checkDateHMS ="dateHMS";
function checkAllInput(checkArr){
    var checkStr = "";
    var blCheckOk = false;
    var strType = "";
    try{
   //alert(checkArr[5][2]);
    for(var i_check=0;i_check<checkArr.length;i_check++){
       //alert(i+"__"+checkArr[i][0]);
       blCheckOk = false;
       //非空check
       checkStr = checkArr[i_check][2]+",";
        var checkobj = getElementX(checkArr[i_check][0]);
        // alert(checkStr);
        if(checkStr.indexOf(","+checkNull+",")>=0 || checkStr.indexOf(","+checkSelNull+",")>=0){           
            strType = checkobj.type;
            //alert(strType);
            if(strType.indexOf("select")<0 ){
                var checkvalue = checkobj.value;
                if(IsNullX(checkvalue)){
                    alert(checkArr[i_check][1]+"不能为空！");
                    getElementX(checkArr[i_check][0]).select();
                    getElementX(checkArr[i_check][0]).focus();
                    return false; 
                }
            }else{ 
               if(checkobj.length <=0 && checkStr.indexOf(","+checkSelNull+",")<0){
                    alert(checkArr[i_check][1]+"未添加任何项目！");
                    //getElementX(checkArr[i_check][0]).select();
                   getElementX(checkArr[i_check][0]).focus();
                    return false; 
               }else if(checkStr.indexOf(","+checkSelNull+",")>=0){
                  for(var i=checkobj.length-1;i>=0;i--){
                      var rOption =checkobj[i];
                      if(rOption.selected == true){
                       
                         if(rOption.value!=""){
                            blCheckOk =  true;
                         }
                      }
                  }
                  if(!blCheckOk){
                      alert(checkArr[i_check][1]+"未选择任何项目！");
                      getElementX(checkArr[i_check][0]).focus();
                      return false; 
                  }
               }      
            }
        }
        //alert(i_check+"_2");
        //数字内容Check0123456789.
        //a
        if(checkStr.indexOf(","+checkNum+",")>=0){
         //alert((checkStr));
            if(!isNumber("getElementX('"+checkArr[i_check][0]+"')")){
                alert(checkArr[i_check][1]+"输入非数字内容！");
                getElementX(checkArr[i_check][0]).select();
                getElementX(checkArr[i_check][0]).focus();
                return false; 
            }
        }
        
        //正则表达试项目检测        if(checkArr[i_check][3]!=null&&checkArr[i_check][3]!=""){
            var Reg = new RegExp(checkArr[i_check][3],"ig");
            if(Reg.test(getElementX(checkArr[i_check][0]).value)){
                alert(checkArr[i_check][1]+"输入非法字符！");
                getElementX(checkArr[i_check][0]).select();
                getElementX(checkArr[i_check][0]).focus();
                return false; 
            }
        }
    
   
        //email格式检测        if(checkStr.indexOf(","+checkEmail+",")>=0){
            var Reg = new RegExp("^[_a-z0-9]+@([_a-z0-9]+\.)+[a-z0-9]{2,3}$","ig");
            if(!IsNullX(getElementX(checkArr[i_check][0]).value)){
                if(!Reg.test(getElementX(checkArr[i_check][0]).value)){
                    alert(checkArr[i_check][1]+"格式错误！");
                    getElementX(checkArr[i_check][0]).select();
                    getElementX(checkArr[i_check][0]).focus();
                    return false; 
                 }
            
            }
        }
    
        // 电话号码检测        if(checkStr.indexOf(","+checkTel+",")>=0){
            var Reg = new RegExp("[^\-0-9]","ig");
                if(getElementX(checkArr[i_check][0]).value<7||Reg.test(getElementX(checkArr[i_check][0]).value)){
                    alert(checkArr[i_check][1]+"电话号码输入错误！");
                    getElementX(checkArr[i_check][0]).select();
                    getElementX(checkArr[i_check][0]).focus();
                    return false; 
                 }
        }
        
        //日期正确性检测2007/12/12
        //alert(checkArr[i_check][0]);
         if(checkStr.indexOf(","+checkSDate+",")>=0)
         {          
            if(!checkDate(getElementX(checkArr[i_check][0]).value))
            {
                alert(checkArr[i_check][1]+"数据不正确！");
                getElementX(checkArr[i_check][0]).select();
                getElementX(checkArr[i_check][0]).focus();
                 //alert(checkSDate);   
                 return false;            
            }
        }
        
        //日期正确性检测2007-12-12 09:00:09
        //alert(checkArr[i_check][0]);
         if(checkStr.indexOf(","+checkDateHMS+",")>=0)
         { 
         var strDate=getElementX(checkArr[i_check][0]).value;
         
         var strSplit=strDate.split(" ");
                  
            if(checkDate(strSplit[1]+"") && checkDateHMS(strSplit[2]+""))
            {
                alert(checkArr[i_check][1]+"数据格式不正确！");
                getElementX(checkArr[i_check][0]).select();
                getElementX(checkArr[i_check][0]).focus();
                 //alert(checkSDate);   
                 return false;            
            }
        }
       
    }
    return true;
    }catch(e){
    
     alert("error:"+e.name+"_"+e.message);
     return false;
    }
}

function getElementX(objName){
    if(document.getElementById(objName)){
        return document.getElementById(objName);
    }else if(document.getElementById(objName.replace("$","_"))){
        return document.getElementById(objName.replace("$","_"));
    }else{
        alert("["+objName+""+"]");
        
    }

}


function IsNullX(checkvalue){    
    var ret = false;
        if(checkvalue==""||checkvalue==null){
            ret = true;
        }
        if(!ret){
            ret = true;
            for(var len=0;len<(checkvalue+"").length;len++){
		       if((checkvalue+"").charAt(len)!=" "){
			       ret = false;
		       }
		     }
        }
        return ret;
}

function checkListSel( checkobj){
    var blCheckOk = false;
    for(var i=checkobj.length-1;i>=0;i--){
          var rOption =checkobj[i];
          if(rOption.selected == true){
           
             if(rOption.value!=""&&rOption.value!="0"){
                blCheckOk =  true;
             }
          }
      }
      if(!blCheckOk){
          return false; 
      }else{
        return true;
      }
  }
