function checkForm()
{
	var oList = document.getElementsByTagName("INPUT") 
	
	for(var i=0; i < oList.length; i++)
	{
		var oElt = oList.item(i);
		if( oElt.getAttribute("datasrc") != null && oElt.getAttribute("datasrc") != "")
		{
			var paras = oElt.getAttribute("datasrc")
			var oRet = checkPara(paras);
			if( !oRet)
			{
				return false;
			}
		}
	}  	
		
	oList = document.getElementsByTagName("SELECT") 	
	for(var i=0; i < oList.length; i++)
	{
		var oElt = oList.item(i);
		if( oElt.getAttribute("datasrc") != null && oElt.getAttribute("datasrc") != "")
		{
			var paras = oElt.getAttribute("datasrc")
			var oRet = checkPara(paras);
			if( !oRet)
			{
				return false;
			}
		}
	}  	
	
	oList = document.getElementsByTagName("TEXTAREA") 	
	for(var i=0; i < oList.length; i++)
	{
		var oElt = oList.item(i);
		if( oElt.getAttribute("datasrc") != null && oElt.getAttribute("datasrc") != "")
		{
			var paras = oElt.getAttribute("datasrc")
			var oRet = checkPara(paras);
			if( !oRet)
			{
				return false;
			}
		}
	}  	
	
	return true;
}

function checkPara(parasContent)
{
	
	var bRet = false;
	var arItems = parasContent.split('#');
	
	var fieldName = arItems[0];
	var keyname = arItems[1];
	var objVal = document.getElementById(keyname);
	var val = objVal.value;
	
	
	var iCheckType = arItems[2];
	
	var checkEmpty = arItems[3];
	var isCheckEmpty = false;	
	if(checkEmpty == "1")
	{
		isCheckEmpty = true;
		if( val == "")
		{
			alert(fieldName + "请请输入值");
			objVal.focus();		
			return false;
		}	
	}
	
	var paras = arItems[4];
	
	switch(iCheckType)
	{
		case "1": //字符
			var arParas = paras.split("$");
			if(arParas[0] != "")
			{
				if(val.length < parseInt(arParas[0],10))
				{
					alert(fieldName + "不能少于" + arParas[0] + "个字");
					objVal.focus();
					return false;
				}
									   							   		
				if(arParas[1] != "")
				{
					if(val.length > parseInt(arParas[1],10))
					{
					   	alert(fieldName + "不能多于" + arParas[1] + "个字");
					   	objVal.focus();
					   	return false;
					}
				}
			}
			break;
		case "2": //数值			
			if(!isNumber(val) && val != "")
			{
				alert(fieldName + "必须为数字");
				objVal.focus();
				return false;
			}
						 						 			
			var arParas = paras.split("$");
			
			
			if(arParas[2] != "" && val != "")
			{
				if(val.length != arParas[2])
				{
					alert(fieldName + "只能是" + arParas[2] + "位的数值");
					objVal.focus();
					return false;
				}
			}
			
			if(arParas[0] != "")
			{							
				if(parseInt(val,10) < parseInt(arParas[0]))
				{
					alert(fieldName + "不能少于" + arParas[0])								
					objVal.focus();
					return false;
				}
			}
						 
			if(arParas[1] != "")
			{
				if(ParseInt(val,10) > parseInt(arParas[1]))
				{
					alert(fieldName + "不能大于" + arParas[0]);
					objVal.focus();
					return false;
				}			
			}
			break;
		case "3":
			 var pattern =  /^\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*$/;
			  if(!pattern.test(val) && val != "")
			  {				
				alert("请输入有效的Email值");
				objVal.focus();
				return false;
			  }
			 break;
		case "4":
			if(!isNumber(val) && val != "")
			{
				alert(fieldName + "必须为数字");
				objVal.focus();
				return false;
			}
			var arParas = paras.split("$");				
			if(arParas[0] != "")
			{							
				if(parseInt(val,10) < parseInt(arParas[0]))
				{
					alert(fieldName + "不能少于" + arParas[0])								
					objVal.focus();
					return false;
				}
			}						 
			if(arParas[1] != "")
			{
				if(ParseInt(val,10) > parseInt(arParas[1]))
				{
					alert(fieldName + "不能大于" + arParas[0]);
					objVal.focus();
					return false;
				}			
			}
			break;			
		case "5":
			var pattern = paras						
			if(!pattern.test(val) && val != "")
			{
				alert("请输入有效的" + fieldname + "值");
				objVal.focus();
				return false;
			}
			break;	
		case "6": //密码确认
			var fromObj = document.getElementById(paras);
			if(fromObj.value != val)
			{
				alert(fieldName + "值不匹配");
				objVal.focus();
				return false;
			}	
			break;
	}	
	return true;	
 }


	function isNumber(oNum)
	{
		if(!oNum) return false;
		var strP=/^\d+(\.\d+)?$/;
		if(!strP.test(oNum)) 
			return false;
		
		try
		{
			if(parseFloat(oNum)!=oNum) return false;
		}
		catch(ex)
		{
			return false;
		}
		return true;
	}
