function isemptyval(what)
 {
  if(what == "") return true;
  return false;
 }
function isdigitval(what)
 {
  var i,dot,ch;
  dot = false;
  if(what.length == 0) return false;
  for(i=0;i < what.length;i++)
  {
   ch = what.substr(i,1);
   if(ch > '9' || ch < '0') 
    { 
      if((ch != '+' && ch !='-' && ch !='.') || ( i == what.length-1))
         return false;
      else if(i != 0 && (ch == '+' || ch =='-')) 
         return false;
      else if(ch == '.') {
      	 if(i==0) return false;
      	 if(!dot)
      	   dot =true;
      	 else
      	   return false; }
    }
  }
  return true;
 }
function isdate(what)
 {
   var tmpa,days,i,j,tmpb="31,28,31,30,31,30,31,31,30,31,30,31";
   

   days = tmpb.split(',');

   tmpa = what.split('-');
   if(tmpa.length!=3) return false;
   for(i=0;i<3;i++) 
     if(! isdigitval(tmpa[i]))
      {
        return false;
      }
     else
      {
       if(i==0)
        {
       	 if(parseInt(tmpa[0]) % 100 == 0)
       	  {
       	   if(parseInt(tmpa[0]) % 400 == 0) days[1]=29;
          }
         else
         {
       	   if(parseInt(tmpa[0]) % 4 == 0) days[1]=29;
       	 }
        }
       else if(i==1)
        {
         if(parseInt(tmpa[1])>12 || parseInt(tmpa[1]) < 1) return false;
        }
       else if(i==2)
        {
         if(parseInt(tmpa[2])>parseInt(days[parseInt(tmpa[1])-1]) || parseInt(tmpa[2]) < 1) return false;
        }
      }    
   return true;
 }
function istime(what)
 {
   var tmpa;
   tmpa = what.split(':');
   if(tmpa.length!=3) return false;
   for(i=0;i<3;i++) {
     if(! isdigitval(tmpa[i]))
       return false;
     else {
       if(i==0)
         if(parseInt(tmpa[i])>23 || parseInt(tmpa[i]) < 0) return false;
       else
         if(parseInt(tmpa[i])>59 || parseInt(tmpa[i]) < 0) return false;
     }
   }
   return true;
 }
 
function checkvaluefield()
 {
   var i,a;
   var obj;
   a = checkvaluefield.arguments;
   if(a.length != 4) return false;
   if(a[0]=="") a[0]="document.all";
   obj = eval(a[0]+"."+a[1]);
   
   switch(a[2]) {
      case "empty":
         if(isemptyval(obj.value))
          {
           if(a[3]!="" ) {
     	   alert("请填写“"+a[3]+"”后再提交！");
     	   obj.focus();
     	   }
      	   return false;
      	  }
          break;
      case "digit":
         if(!isdigitval(obj.value))
          {
           if(a[3]!="") {
      	   alert("请检查“"+a[3]+"”是否都是数字再提交！");
      	   obj.focus();
      	   }
      	   return false;               	  
          }
      	  break;
      case "date":
      	 if(!isdate(obj.value))
      	  {
      	   if(a[3]!="") {
      	   alert("字段“"+a[3]+"”为日期型,您的值为非法的，请检查后再提交！");
      	   obj.focus();
      	   }
      	   return false;               	  
      	  }
      	  break;
      case "time":
      	 if(!istime(obj.value))
      	  {
      	   if(a[3]!="") {
      	   alert("字段“"+a[3]+"”为时间型，您的值为非法的，请检查后再提交！");
      	   obj.focus();
      	   }
      	   return false;               	  
      	  }
      	  break;      	  
      default:
      	 if(isemptyval(obj.value))
      	  {
      	   if(a[3]!="") {
           alert("请填写"+a[3]+"后再提交！");
      	   obj.focus()
      	   }
      	   return false;
      	  }
      	  break;
   }
   return true;
 }
function checkvaluelist()
 {
  var i,a;
  var obj;
  a = checkvaluelist.arguments;
  
  if(a.length == 0) return false;
  
  for(i=1; i<a.length; i+=2)
   {
    if(i+1<=a.length)
     {
      obj = eval(a[0]+"."+a[i]);
      switch(a[i+1]) {
      	   case "empty":
      	      if(isemptyval(obj.value))
      	       {
      	       	 alert("请检查后再提交！");
      	       	 obj.focus()
      	      	 return false;
      	       }
      	      break;
      	   case "digit":
              if(!isdigitval(obj.value))
               {
      	       	 alert("请检查后再提交！");
      	       	 obj.focus()
      	      	 return false;               	  
               }
      	      break;
      	   case "datetime":
      	      if(!isdatetime(obj.value))
      	       {
      	       	 alert("请检查后再提交！");
      	       	 obj.focus()
      	      	 return false;               	  
      	       }
      	   break;
      	   default:
      	      if(isemptyval(obj.value))
      	       {
      	       	 alert("请检查后再提交！");
      	       	 obj.focus()
      	      	 return false;
      	       }
      	      break;
      }
     }
   }
   
  return true;
  
}