
/* 检测字符串是否全为数字 */
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;
}

function isfloatnumber(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;
}


// 检查是否是合法日期
//参数：stringVal:    需要监察的字符串。
//返回：true:   正确
//	string  错误
function checkDate(stringVal)   
{
	//==========
	//日期格式："YYYY-MM-DD"
	if(stringVal.length<10) return false;
	if(stringVal.substring(4,5) !="-" || stringVal.substring(7,8) !="-") return false
	//==============
	var sYear,sMonth,sDate,index,Nindex,DateTime,str,len
	sYear=""
	sMonth=""
	sDate=""
	DateTime=stringVal
	Nindex=0;
	len=DateTime.length
	for(index=1;index<=len;index++){
		str=DateTime.substr(0,1)
		DateTime=DateTime.substr(1,DateTime.length)
		if (isNaN(str)) break;    
	    else{
			if (!(0<parseInt(str)<9))break;
		}
		sYear=sYear+str;
	}	
	len=DateTime.length
	for(index=1;index<=len;index++){
		str=DateTime.substr(0,1)
		DateTime=DateTime.substr(1,DateTime.length)
		if (isNaN(str)) break;
		else{
			if (!(0<parseInt(str)<9)) break;
		}
		sMonth=sMonth+str;
	}	
	len=DateTime.length
	for(index=1;index<=len;index++){
		str=DateTime.substr(0,1)
		if (isNaN(str)) break;
		else{
			if (!(0<parseInt(str)<9)) break;
		}
		sDate=sDate+str;
		DateTime=DateTime.substr(1,DateTime.length)
	}
	if (DateTime!="")return false   
	if (isNaN(sYear) || isNaN(sMonth) || isNaN(sDate)) return false;
	if (!((sYear>1900) && (sYear<2900))) return false;
	if (!((sMonth>0) && (sMonth<13))) return false;
	
	sMonth=parseInt(sMonth)
	switch (sMonth)
	{
	case 1:
	case 3:
	case 5:
	case 7:
	case 8:
	case 10:
	case 12:
		if (!((sDate>0) && (sDate<32))) return false;
		break;
	case 2:
		if (sYear%4==0){
			if((sYear%100==0) && (!(sYear%400==0))){
				if (!((sDate>0) && (sDate<29))) return false;
			}else{
				if (!((sDate>0) && (sDate<30))) return false;
			}
		}else{
			if (!((sDate>0) && (sDate<29))) return false;
		}
		break;	
	case 4:
	case 6:
	case 9:
	case 11:
		if (!((sDate>0) && (sDate<31))) return false;
		break;
	}
	return true;
}

//校验时间
//格式"HH:mm"
function checkTime(Value){
	var num;
	if(Value ==null) return false
	if(Value.length != 5) return false;
	try{
		num =(Value.substring(0,2)) *1;
	}catch(e){
		num = -1;
	}
	if(num <0 || num>24) {
  	   alert("错误：时间不规范！小时范围应在0--24之间\r\n\r\n")
       return false;
	}
	try{
		num =(Value.substring(3,5)) *1;
	}catch(e){
		num = -1;
	}
	if(num <0 || num>60) {
  	   alert("错误：时间不规范！分钟范围应在0--60之间\r\n\r\n")
       return false;
	}

	if(Value.substring(2,3) !=":") return false;
	return true;
}

//转换日期格式
//格式"yyyyMMdd" to "yyyy-MM-dd"
function transDate(Value){
	var str;
	if(Value.length !=8) return;
	str =Value.substring(0,4) +"-" +Value.substring(4,6) +"-" +Value.substring(6,8);
	return str;
}

//转换时间格式
//格式"HHmm" to "HH:mm"
function transTime(item){
	var str;
	Value =document.all[item].value;
	if(Value.length !=4) return;
	str =Value.substring(0,2) +":" +Value.substring(2,4);
	document.all[item].value =str
}

//两日期比较
//日期bigDate（yyyy-mm-dd）不小于日期smallDate
function dateCompare(bigDate,smallDate){
	bigDate =bigDate.substring(0,4) +bigDate.substring(5,7) +bigDate.substring(8,10);
	smallDate =smallDate.substring(0,4) +smallDate.substring(5,7) +smallDate.substring(8,10);
	delay =(bigDate *1) - (smallDate *1);
	if(delay <0) return false;
	return true;
}

//两时间比较
//日期bigDate（yyyy-MM-dd HH:mm）不小于日期smallDate（yyyy-MM-dd HH:mm）
function timeCompare(bigDate,smallDate){
	if(bigDate.length<10) return true; //不比
	if(smallDate.length<10) return true; //不比
	if(bigDate.length<16 && smallDate.length<16){
		smallDate =smallDate.substring(0,10);
		bigDate =bigDate.substring(0,10);
		bigDate =bigDate.substring(0,4) +bigDate.substring(5,7) +bigDate.substring(8,10) ;
		smallDate =smallDate.substring(0,4) +smallDate.substring(5,7) +smallDate.substring(8,10);
	}else{
		bigDate =bigDate.substring(0,4) +bigDate.substring(5,7) +bigDate.substring(8,10) +bigDate.substring(11,13) +bigDate.substring(14,16);
		smallDate =smallDate.substring(0,4) +smallDate.substring(5,7) +smallDate.substring(8,10) +smallDate.substring(11,13) +smallDate.substring(14,16);
	}
	delay =(bigDate *1) - (smallDate *1);
	if(delay <0) return false;
	return true;
}

//两日期比较
//日期bigDate（yyyy-mm-dd）不能大于日期smallDate n个月
function dateCompareLimited(bigDate,smallDate,n){
	big =bigDate.substring(0,4)*12 +bigDate.substring(5,7)*1;
	small =smallDate.substring(0,4)*12 +smallDate.substring(5,7)*1;
	delay =big - small;
	if(delay >n) return false;
	return true;
}
//返回天数差
function dateMinus(bigDate,smallDate){
	var aDay=new Date(bigDate.substring(0,4),bigDate.substring(5,7),bigDate.substring(8,10))
	var bDay=new Date(smallDate.substring(0,4),smallDate.substring(5,7),smallDate.substring(8,10))
	return (bDay-aDay)/86400000
}

// 检查是否是大于等于0的整数
//参数：str:    需要监察的字符串。
//返回：true:   正确
//	string  错误
function isPositiveInt(str){
	var strLength;
	if(isNaN(str)==true) return false;
	strLength=str.length;
	for(i=0; i<strLength; i++)
		if(str.charAt(i)<'0' || str.charAt(i)>'9') return false;
	return true;
}

// 检查是否是正确的整数
//参数：str:    需要检查的字符串。
//返回：true:   正确
//	string  错误
function isInt(str){
	var strLength;
	if(isNaN(str)==true) return false;
	strLength=str.length;
	if(strLength>1){
		for(i=0; i<strLength; i++){
			if(i==0){
				if(!(str.charAt(i)=='-' || (str.charAt(i)>='0' && str.charAt(i)<='9'))){
					return false;
				}
			}
			else{
				if(!(str.charAt(i)>='0' && str.charAt(i)<='9')){
					return false;
				}
			}
		}
	}
	else{
		for(i=0; i<strLength; i++){
			if(!(str.charAt(i)>='0' && str.charAt(i)<='9')){
				return false;
			}
		}
	}
	return true;
}

// 去除首尾空格
//参数：s: 需要判断的string
//返回：string : 去除首尾空格后的string
function ltrim(s){
	var len;
	s=s+"";
	len=s.length;
	for(i=0;i<len;i++)
		if(s.charAt(i)>" ")
			break;
	return s.substring(i,len);
}
function rtrim(s){
	var len;
	s=s+"";
	len=s.length;
	for(i=len-1;i>-1;i--)
		if(s.charAt(i)>" ")
			break;
	return s.substring(0,i+1);
	
}
function trim(s){
	return ltrim(rtrim(s));
}

//判断值是否为空，因为主要判断text域，所以不判断null情况
//参数：field: 需要判断的string
//返回：true : string为空
//	false: string不为空
function isEmpty(field){
	if(trim(field).length == 0) return true;
	else return false;
}

//年龄
function getAge(today,birth){
	var age;
	age =today.substring(0,4)*1 - birth.substring(0,4)*1;
	if(((today.substring(5,7)+today.substring(8,10))*1 -(birth.substring(5,7)+birth.substring(8,10))*1) <0){
		age--;
	}
	return age;
}
//空 返回 true and messagebox
function isNullM(obj,message){
	var Value=trim(obj.value);
	if(Value.length==0){
		messBox(1,message);
		obj.focus();
		return true;
	}
	return false;
}
function isNull(value){
	var Value=trim(value)
	if(Value.length==0)return true
	else return false
}

//type=1:警告;2:系统信息
function messBox(type,mStr){
	var mess;
	if(type==1) mess="警告：\n\n"+mStr+"！！！";
	else if(type==2) mess="系统信息：\n\n"+mStr+"！";
	alert(mess);
}
function evalClick(obj){
	//obj.
	obj.focus()
}
function setDisable(obj,disable){
	type=obj.type
	if(type!="button" && type!="radio" && type!="checkbox"){
		if(disable)obj.className="border2Enabled"
		else obj.className="border2"
	}
	
	if(type.substring(0,6)=="select" || type=="checkbox" || type=="radio" || type=="button"){
		obj.disabled=disable
	}else{
		obj.readOnly=disable
	}
}
function objIni(obj){
	type=obj.type
	if(type.substring(0,4)=="text" || (obj.type).substring(0,6)=="select" || type=="hidden")obj.value=""
	else if(type=="radio" || type=="checkbox")obj.checked=false
}
function checkEval(obj){
	obj.click()
	obj.focus()
}
//取table的值
function getTBValue(tbObj,row,col){
	var value=""
	try{
		value=tbObj.rows[row].cells[col].innerHTML
	}catch(e){
		value=""
	}
	return value
}
function setTBValue(tbObj,row,col,value){
	//0:成功；-1失败
	ret =0
	try{
		tbObj.rows[row].cells[col].innerHTML=value
	}catch(e){
		ret=-1
	}
	return ret
}
function getYear(date){
	return date.substring(0,4)
}
function getMonth(date){
	return date.substring(5,7)
}
function getDay(date){
	return date.substring(8,10)
}
function getHour(date){
	return date.substring(11,13)
}
function getMinut(date){
	return date.substring(14,16)
}
function getObjHTML(obj){
	str=obj.outerHTML
	return str.substring(0,str.indexOf(">")+1)
}
function callDialog(url,width,height){
	showModalDialog(url,window,"dialogWidth:"+width+"px;dialogHeight:"+height+"px;center:yes;help:no;resizable:no;status:no;")
}
