﻿//去除字符串左侧空格	
function LTrim(tmpStr)
{
	while(tmpStr.substring(0,1)==" ")
	{
		tmpStr=tmpStr.substring(1,tmpStr.length);
	}
	return tmpStr;
}

//去除字符串右侧空格	
function RTrim(tmpStr)
{
	while(tmpStr.substring(tmpStr.length-1,tmpStr.length)==" ")
	{
		tmpStr=tmpStr.substring(0,tmpStr.length-1);
	}
	return tmpStr;
}
	
//去除字符串两头空格
function Trim(tmpStr)
{
	return LTrim(RTrim(tmpStr));
}

//判断对象内容是否为空。是返回True；否返回False。
function isObjectEmpty(objStr,promptStr)
{
	var blnReturn;
	var otype;
	var length=1;

	blnReturn=false;

	length=eval(objStr).length;
	if (isNaN(length)||length==1)
	{
		otype=eval(objStr).type;
	}
	else
	{
		try
		{
			otype=eval(objStr+'(0)').type;
			if (otype!='radio'&&otype!='checkbox') otype=eval(objStr).type;
		}
		catch(e)
		{
			otype=eval(objStr)(0).type;
			if (otype!='radio'&&otype!='checkbox') otype=eval(objStr).type;
		}
	}

	switch(otype)
	{
		case "text":
		case "file":
			tmp=Trim(eval(objStr).value);
			if(tmp.length==0) blnReturn=true;
			break;
		case "textarea":
			tmp=Trim(eval(objStr).innerText);
			if(tmp.length==0) blnReturn=true;
			break;
		case "radio":
		case "checkbox":
			iCount=eval(objStr).length;
			
			blnReturn=true;
			if(iCount>1)
			{
				for(i=0;i<iCount;i++)
				{
					if(eval(objStr+"("+i+")").checked) blnReturn=false;
				}
			}
			else
			{
				if(eval(objStr).checked) blnReturn=false;
			}
			break;			
		case "password":
			tmp=Trim(eval(objStr).value);
			if(tmp.length==0) blnReturn=true;
			break;
		case "select-one":
			tmp=Trim(eval(objStr).value);
			if(tmp.length==0) blnReturn=true;
			break;	
	}
	if(blnReturn)
	{
		alert("["+promptStr+"]不能为空，请输入！");
		SetFocus(objStr);
	}
	return blnReturn;
}
//判断对象的内容是否是数值，是返回True；否返回False。
function isObjectNumeric(objStr,promptStr)
{
	var blnReturn;
	
	blnReturn=isNumeric(Trim(eval(objStr).value));
	if(!blnReturn)
	{
		alert("["+promptStr+"]只能为数值，请重新输入！");
		SetFocus(objStr);
	}
	return blnReturn;
}
//检测字符串是否是数值。是返回True；否返回False。
function isNumeric(CheckValue)
{
	return !isNaN(CheckValue);
}

//判断对象的内容是否全部是数字，是返回True；否返回False。
function isObjectNumber(objStr,promptStr)
{
	var blnReturn;

	blnReturn=isNumber(Trim(eval(objStr).value));
	if(!blnReturn)
	{
		alert("["+promptStr+"]必须全为数字，请输入！");
		SetFocus(objStr);
	}
	return blnReturn;
}
//检测字符串是否由数字字符组成。是返回True；否返回False。
function isNumber(CheckValue)
{
	
	for(i=0;i<CheckValue.length;i++)
	{
		if(isNaN(CheckValue.substring(i,i+1))) return false;
	}
	return true;
}
function isNumberCheck(fieldValue) {
	var isOnlyNumber = new RegExp('^[0-9]+$','');
	if (fieldValue.search(isOnlyNumber) >= 0) {
		return false;
	}
	return true;
}

//判断对象内容是否是合法的日期值
function isObjectDate(objDateStr,promptStr)
{
	var blnReturn;
	
	if(eval(objDateStr).value=="") return true;
	
	blnReturn=isDate(eval(objDateStr).value);
	if(!blnReturn) 
	{
		alert("你输入的["+promptStr+"]不正确，请重新输入（正确的日期格式：2000-1-1）！");
		SetFocus(objDateStr);
	}
	return blnReturn;
}

//检测字符串值是否是日期
function isDate(tmpDate)
{	
	if(tmpDate.length==0) return true;
	
	//获取年份
	index=tmpDate.indexOf("-");
	if(index!=4) return false;
	Year=tmpDate.substring(0,4);
	//获取月份
	tmpDate=tmpDate.substring(5,tmpDate.length);
	index=tmpDate.indexOf("-");
	if(index<1||index>2) return false;
	Month=tmpDate.substring(0,index);
	//获取日
	Day=tmpDate.substring(index+1,tmpDate.length);
	
	return isYearMonthDay(Year,Month,Day)
}

//检测字符串年月日值是否是合理的日期值
function isYearMonthDay(tmpYear,tmpMonth,tmpDay)
{	
	//检测年月日是否由全数字组成
	if(!isNumber(tmpYear)) return false;
	if(!isNumber(tmpMonth)) return false;
	if(!isNumber(tmpDay)) return false;
	
	//将年月日转成数值
	if(!(tmpYear=parseInt(tmpYear,10))) return false;
	if(!(tmpMonth=parseInt(tmpMonth,10))) return false;
	if(!(tmpDay=parseInt(tmpDay,10))) return false;
	
	//检测年份月份值是否合理
	if(tmpYear<1000||tmpYear>3050) return false;
	if(tmpMonth<1||tmpMonth>12) return false;
	
	//检测日是否合理
	switch(tmpMonth)
	{
		case 1:
		case 3:
		case 5:
		case 7:
		case 8:
		case 10:
		case 12:
			if(tmpDay<1||tmpDay>31) return false;
			break;
		case 2:
			mod=tmpYear-parseInt(tmpYear/4,10)*4;
			if(mod==0)
			{
				if(tmpDay<1||tmpDay>29) return false;
			}
			else
			{
				if(tmpDay<1||tmpDay>28) return false;
			}
			break;
		case 4:
		case 6:
		case 9:
		case 11:
			if(tmpDay<1||tmpDay>30) return false;
			break;
	}
	return true;
}
//将焦点移至指定对象
function SetFocus(objStr)
{
	var otype;
	
	try
	{
		otype=eval(objStr+'(0)').type;
	}
	catch(e)
	{
		otype=eval(objStr).type;
	}

	if(otype=="radio"||otype=="checkbox")
	{
		if(iCount>1)
		{
			eval(objStr+"(0)").focus();
		}
		else
		{
			eval(objStr).focus();
		}
	}
	else
	{
		eval(objStr).focus();
	}
}
//检测字符串是否为Email不符合时，返回TRUE
function check_email(address) {
	if ( (address.indexOf ('@') == -1)  || (address.indexOf ('.') == -1)) return true;
	return false;
}
function isemail (s)
{
        // Writen by david, we can delete the before code
        if (s.length > 100)
        {
                //window.alert("email地址长度不能超过100位!");
                return false;
        }
		s = s.toLowerCase()
		 var regu = "^(([0-9a-zA-Z]+)|([0-9a-zA-Z]+[_.0-9a-zA-Z-]*))@([a-zA-Z0-9-]+[.])+([a-zA-Z]{2}|net|NET|com|COM|cn|CN|gov|GOV|mil|MIL|org|ORG|edu|EDU|int|INT|name|NAME)$";
		 var re = new RegExp(regu);
         if (s.search(re) != -1) {
               return true;
         } else {
               //window.alert ("请输入有效合法的E-mail地址 ！");
               return false;
         }
}
//必须为英文或数字 ,不是返回true
function check_char(s)
{
	var regu = "^([a-zA-Z0-9_]*)$";
	var re = new RegExp(regu);
	if(s.search(re) == -1)
	{
		//不是英文数字返回true
		return true;
	}
}
function CheckAll(form)
{
	for (var i=0;i<form.elements.length;i++)
	{
	var e = form.elements[i];
	if (e.name != 'chkall')
	e.checked = form.chkall.checked;
	}
}
function GoUrl(url)
{
	if(url!="")
	{
		window.location = url;
	}
}