// JavaScript Document

//去掉空格
function Trim(str){
if(str.charAt(0) == " "){
  str = str.slice(1);
  str = Trim(str); 
}
return str;
}


//判断是否是空
function isEmpty(pObj,errMsg){
var obj = eval(pObj);
if( obj == null || Trim(obj.value) == ""){
  if (errMsg == null || errMsg =="")
   alert("输入为空!");
  else
   alert(errMsg); 
  obj.focus(); 
  return false;
}
return true;
}

//判断是否是数字
function isNumber(pObj,errMsg){
var obj = eval(pObj);
strRef = "1234567890";
if(!isEmpty(pObj,errMsg))return false;
for (i=0;i<obj.value.length;i++) {
  tempChar= obj.value.substring(i,i+1);
  if (strRef.indexOf(tempChar,0)==-1) {
   if (errMsg == null || errMsg =="")
    alert("数据不符合要求,请检查");
   else
    alert(errMsg);
   if(obj.type=="text") 
    obj.focus(); 
   return false; 
  }
}
return true;
}

//判断是否是数字,数字可以为负数
function isNegative(pObj,errMsg){
var obj = eval(pObj);
strRef = "1234567890-";
if(!isEmpty(pObj,errMsg))return false;
for (i=0;i<obj.value.length;i++) {
  tempChar= obj.value.substring(i,i+1);
  if (strRef.indexOf(tempChar,0)==-1) {
   if (errMsg == null || errMsg =="")
    alert("数据不符合要求,请检查");
   else
    alert(errMsg);
   if(obj.type=="text") 
    obj.focus(); 
   return false; 
  }else{
   if(i>0){
    if(obj.value.substring(i,i+1)=="-"){
     if (errMsg == null || errMsg =="")
      alert("数据不符合要求,请检查");
     else
      alert(errMsg);   
     if(obj.type=="text") 
     obj.focus(); 
     return false; 
    }
   }
  }
}
return true;
}

//判断是否是钱的形式
function isMoney(pObj,errMsg){
var obj = eval(pObj);
strRef = "1234567890.";
if(!isEmpty(pObj,errMsg)) return false;
for (i=0;i<obj.value.length;i++) {
  tempChar= obj.value.substring(i,i+1);
  if (strRef.indexOf(tempChar,0)==-1) {
   if (errMsg == null || errMsg =="")
    alert("数据不符合要求,请检查");
   else
    alert(errMsg);   
   if(obj.type=="text") 
    obj.focus(); 
   return false; 
  }else{
   tempLen=obj.value.indexOf(".");
   if(tempLen!=-1){
    strLen=obj.value.substring(tempLen+1,obj.value.length);
    if(strLen.length>2){
     if (errMsg == null || errMsg =="")
      alert("数据不符合要求,请检查");
     else
      alert(errMsg);   
     if(obj.type=="text") 
     obj.focus(); 
     return false; 
    }
   }
  }
}
return true;
}

function isLeapYear(year) 
{ 
if((year%4==0&&year%100!=0)||(year%400==0)) 
{ 
return true; 
}  
return false; 
} 


//判断时间是否正确
function isDate(checktext){
var datetime;
var year,month,day;
var gone,gtwo;
if(Trim(checktext.value)!=""){
datetime=Trim(checktext.value);
if(datetime.length==10){
  year=datetime.substring(0,4);
  if(isNaN(year)==true){
   alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)！");
   checktext.focus();
   return false;
  }
  gone=datetime.substring(4,5);
  month=datetime.substring(5,7);
  if(isNaN(month)==true){
   alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)！");
   checktext.focus();
   return false;
  }
  gtwo=datetime.substring(7,8);
  day=datetime.substring(8,10);
  if(isNaN(day)==true){
   alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)！");
   checktext.focus();
   return false;
  }
  if((gone=="-")&&(gtwo=="-")){
   if(month<1||month>12) { 
    alert("月份必须在01和12之间!"); 
    checktext.focus();
    return false; 
    } 
   if(day<1||day>31){ 
    alert("日期必须在01和31之间!");
    checktext.focus(); 
    return false; 
   }else{
    if(month==2){  
     if(isLeapYear(year)&&day>29){ 
       alert("二月份日期必须在01到29之间!"); 
       checktext.focus();
       return false; 
     }       
     if(!isLeapYear(year)&&day>28){ 
       alert("二月份日期必须在01到28之间!");
       checktext.focus(); 
       return false; 
     } 
    } 
    if((month==4||month==6||month==9||month==11)&&(day>30)){ 
     alert("在四，六，九，十一月份 \n日期必须在01到30之间!");
     checktext.focus(); 
     return false; 
    } 
   }
  }else{
   alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)");
   checktext.focus();
   return false;
  }
}else{
  alert("请输入日期!格式为(yyyy-mm-dd) \n例(2001-01-01)");
  checktext.focus();
  return false;
}
}else{
return true;
}
return true;
}

//检查非法字符
//str 要检查的字符
//badwords 非法字符 &|<>='"
function checkbadwords(str, badwords) {
 if (typeof (str) != "string" || typeof (badwords) != "string") {
  return (false);
 }
 for (i=0; i<badwords.length; i++) {
  bad = badwords.charAt(i);
  for (j=0; j<str.length; j++) {
   if (bad == str.charAt(j)) {
    return false;
    break;
   }
  }
 }
 return true;
}

//函 数 名：chklength
//功能介绍：检查字符串的长度
//参数说明：要检查的字符串
//返 回 值：字节长度值
function chklength(checkStr) {
 var n = 0;
 for (i=0; i<checkStr.length; i++) {
  chcode = checkStr.charCodeAt(i);
  if (chcode>=0 && chcode<=255) {
   n++;
  } else {
   n += 2;
  }
 }
 return (n);
}

//去左空格;
function ltrim(s){
 return s.replace( /^\s*/, "");
}
//去右空格;
function rtrim(s){
 return s.replace( /\s*$/, "");
}
//左右空格;
function trim(s){
 return rtrim(ltrim(s));
}
//替换
function replace(s, t, u) {
   i = s.indexOf(t);
   r = "";
   if (i == -1) return s;
   r += s.substring(0,i) + u;
   if ( i + t.length < s.length)
     r += replace(s.substring(i + t.length, s.length), t, u);
   return r;
}

//检查合法字符,限制只能输入的字符
//str 要检查的字符
//goodwords 合法字符 1234567890abcdefghijklmnopqrstuvwxyz_
function checkgoodwords(str, goodwords) {
 if (typeof (str) != "string" || typeof (goodwords) != "string") {
  return (false);
 }
 for (i=0; i<str.length; i++) {
  this_str = str.charAt(i);
  for (j=0; j<goodwords.length; j++) {
   if (this_str == goodwords.charAt(j)) {
    break;
   }
   if(j==goodwords.length-1){
    return false;
   }
  }
 }
 return true;
}

//判断是否邮箱
function isEmail(strEmail) {
    var myReg = /^[-_A-Za-z0-9]+@([_A-Za-z0-9]+\.)+[A-Za-z0-9]{2,3}$/; 
    if(myReg.test(strEmail)) return true; 
    return false; 
}

