//选行
function setRowIndex(sid)
{
	//alert("curRowIndex="+curRowIndex+"\nsid.rowIndex="+sid.rowIndex);
	var t = sid.parentElement;
	for(var i=0;i<=t.rows.length-1;i++)
	{
		var col=t.rows[i].style.backgroundColor;		
		if(col == "#f5f5bc")
		{
			t.rows[i].style.backgroundColor="#FFFFFF";
		}
		//alert("fff "+i);
	}

	sid.style.backgroundColor = "#f5f5bc";
	curRowIndex = sid.rowIndex;

}
//检查一个输入field是否为空
function IsEmptyValue(value){
	if(value==null)
		return true;
	var i=0;
	for(i=0;i<value.length;i++){
		if(value.charAt(i)!=" ") 
			return false;
	}//end for
	return true
}//end IsEmptyValue

  //对对象进行check,是否属于输入field
    function IsInputField(object){
    	if(object.type=="button")
    		return -1;
       	if(object.type=="submit")
    		return -1;
    	if(object.type=="reset")
    		return -1;
    	if(object.type=="hidden")
    		return 0;
    	if(object.type=="select-one"){
    		if(object.code!=null)
    			return 2;
    		if(object.Acode!=null)
    			return 3;
    		return 4;
    	}
    	if(object.type=="select-multiple"){
    		if(object.code!=null)
    			return 5;
    		if(object.Acode!=null)
    			return 6;
     		return 7;
    	}//end if
       	return 1;
    }//end IsInputField
    
//数据合法性检查
function checkValidator(theForm){
	var PatternsDict = new Object();
	PatternsDict.zipPat = /^\d{6}$/;// matches zip codes
	PatternsDict.integerPat = /\d{1,20}$/;//正整数检查
	PatternsDict.floatPat= /^\d{0,13}(\.|\d{0})\d{0,2}$/;//positive float  check
	// matches  -14,281,545.45 or ...
	PatternsDict.numberPat=/^(\-|d{0})\d{1,20}(\.|\d{0})\d{0,2}$/;
	PatternsDict.yearPat = /^\d{4}$/;//year检查
	// matches 5:04 or 12:34 but not 75:83
	PatternsDict.timePat=/^(0[1-9]|[1-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5]{0,}\d$/; //check time format
	// matches 1999-01-01 but not 99-01-01, 99-1-1, 99-01-1, 99-1-01, 1999-1-1, 1999-01-1, 1999-01-01
	PatternsDict.datePat =/^(19[0-9][0-9]|2[0-9][0-9][0-9])-([1-9]|0[1-9]|1[0-2])-([1-9]|0[1-9]|[1-2][0-9]|3[0-1])$/;
	
	PatternsDict.dateTimePat =/^(19[0-9][0-9]|200[0-9])-([1-9]|0[1-9]|1[0-2])-([1-9]|0[1-9]|[1-2][0-9]|3[0-1])\s(0[1-9]|[1-9]|1[0-9]|2[0-3]):[0-5][0-9]:[0-5]{0,}\d$/;
	//month,match "YYYY-MM" format
	PatternsDict.monthPat =/^(19[0-9][0-9]|200[0-9])-([1-9]|0[1-9]|1[0-2])$/;
	// matches "" string
	PatternsDict.stringPat=/\S{1,400}/;
	//matches 2'30"25
	//PatternsDict.scorePat=/^(([0-5])?[0-9]\')?(([0-5])?[0-9])\"(\d{0,3})?$/;
	PatternsDict.scorePat=/^(([0-5])?[0-9]\')?(([0-5])?[0-9])\"(\d{0,3})?$|^([0-5])?[0-9]\'$/;
	var column = theForm.elements; // get all elements of the form into array
	var i=0;
	for(i = 0; i < column.length; i++){
		// for each element of the form...
		with(column[i]){
			if(column[i].nullFlag==1){  //if input field can be null;
				if(IsEmptyValue(column[i].value)){
					if((column[i].valiPat=="numberPat")||(column[i].valiPat=="floatPat")||(column[i].valiPat=="integerPat"))
						column[i].value="0";
					continue;
				}
			}// 将可以为空的且确实为空的数设为0
			var v = column[i].valiPat; // get valiPat, if any
			//alert(column[i].name);
			if(!v) continue; // no valiPat property, skip
			var thePat = PatternsDict[v]; // select the validating regular expr 
			if(!thePat.exec(value)){
				alert("错误提示:"+"\n\r["+column[i].message + "]不能为空或输入错误,请检查"); 
				if(IsInputField(column[i])==1)
					column[i].select();
				return false;
			} 
		}//end with 
	}//end for 
	//unlockFields(theForm,2);
	//return false;
	return true;
}//end checkValidator