var i,j;
var	sRegExp_Email = /^[_a-z0-9][0-9a-zA-Z\_\-\.]{0,}@([_a-z0-9]+\.)+[a-z0-9]{2,4}$/;
var	sRegExp_Int = /^[0-9|-][0-9]{0,}$/;
var intMessageType = 4

function checkData(){		
	var blnTemp,intSelectAmount
	var intMaxAmount
	var intMinAmount
	var intPoint = 0;
	var sMessagePageStr = ""
	var sMessageWinStr = ""
	for(i=0; i<arrItem.length; i++){
		if(arrItem[i][3]==6){
			for(j=0; j<arrItem.length; j++){
				if(arrItem[i][0]==arrItem[j][5]){
					arrItem[j][6] = arrItem[i][6]
				}
			}
		}
		if(typeof(window.document.all["M"+arrItem[i][2]])!="undefined"){
			window.document.all["M"+arrItem[i][2]].innerHTML = ""		
		}
		arrItem[i][7] = ""
		//window.document.all["M"+arrItem[i][2]].innerHTML = ""
		window.document.all.MessageHz.innerHTML = ""
	}
	
	blnTemp = false
	for(i=0; i<arrItem.length; i++){
		blnTemp = false
		switch(parseInt(arrItem[i][3])){
			case 1:
				if (getCheckClass(arrItem[i][6],"Empty1")==true){
					if(form1[arrItem[i][2]].value==""){
						form1[arrItem[i][2]].focus()
						arrItem[i][7] = arrItem[i][1]+"\n不能为空"
					}
				}				
				break;
				if (getCheckClass(arrItem[i][6],"Email1")==true){
					if(sRegExp_Email.test(form1[arrItem[i][2]].value)==false){
						form1[arrItem[i][2]].focus()
						arrItem[i][7] = arrItem[i][1]+"\n必须为Email"
					}
				}
				
				if (getCheckClass(arrItem[i][6],"Num1")==true){
					if(sRegExp_Int.test(form1[arrItem[i][2]].value)==false){
						form1[arrItem[i][2]].focus()
						arrItem[i][7] = arrItem[i][1]+"\n必须为数字"

					}
				}
			case 2:					
				if (getCheckClass(arrItem[i][6],"Empty1")==true){
					if(form1[arrItem[i][2]].value==""){
						form1[arrItem[i][2]].focus()
						arrItem[i][7] = arrItem[i][1]+"\n不能为空"
					}
				}
				break;
			case 3:						
					if (getCheckClass(arrItem[i][6],"Empty1")==true){	
						if(typeof(form1[arrItem[i][2]].checked)=="undefined"){//如果==undefined，则有大于1个选项
							for(j=0; j<form1[arrItem[i][2]].length; j++){
								if(form1[arrItem[i][2]][j].checked==true){
									blnTemp = true
								}
							}
							if(blnTemp==false){
								form1[arrItem[i][2]][0].focus()
								arrItem[i][7] = arrItem[i][1]+"\n为必回题"
							}
						}
						else{//否则，只有一个选项
							if(form1[arrItem[i][2]].checked==false){							
								form1[arrItem[i][2]].focus()
								arrItem[i][7] = arrItem[i][1]+"\n为必回题"
							}							
						}						
					}		
					
				
				break;
			case 4:
				
				intSelectAmount = 0				
				intMaxAmount = 0
				intMinAmount = 0	
				intMaxAmount = getMaxMinSelect(arrItem[i][6],"MaxSelect")
				intMinAmount = getMaxMinSelect(arrItem[i][6],"MinSelect")
				
				if (getCheckClass(arrItem[i][6],"Empty1")==true){
					for(j=0; j<form1[arrItem[i][2]].length; j++){
						if(form1[arrItem[i][2]][j].checked == true){
							intSelectAmount += 1							
						}
					}						
					
					if(intSelectAmount==0){
						form1[arrItem[i][2]][0].focus()
						arrItem[i][7] = arrItem[i][1]+"\n为必回题"
					}
					
					if(intSelectAmount>intMaxAmount){
						form1[arrItem[i][2]][0].focus()
						arrItem[i][7] = arrItem[i][1]+"\n超出最多选择数"+intMaxAmount+"个"
					}
					if(intSelectAmount<intMinAmount){
						form1[arrItem[i][2]][0].focus()
						arrItem[i][7] = arrItem[i][1]+"\n少于最少选择数"+intMinAmount+"个"
					}
				}	
				break;
			case 5:
				if (getCheckClass(arrItem[i][6],"Empty1")==true){
					if(form1[arrItem[i][2]].selectedIndex ==0){
						form1[arrItem[i][2]].focus()
						arrItem[i][7] = arrItem[i][1]+"\n为必答题"
					}						
				}		
				break;
		}				
			
	}
	
	for(i=0; i<arrItem.length; i++){
		if(arrItem[i][7]!=""){
			if(intMessageType==0){//提示框单条提示
				alert(arrItem[i][7])
				return false
			}
			sMessageWinStr += arrItem[i][7]+"\n\n"
			sMessagePageStr += arrItem[i][7]+"<BR>"
		}
	}
	
	switch(intMessageType){
		case 1://提示框汇总提示
			if(sMessageWinStr!=""){
				alert(sMessageWinStr)
				return false
			}
			break;
		case 2://页内汇总提示
			if(sMessagePageStr!=""){
				window.document.all.MessageHz.innerHTML = "<div class=bigfont>"+sMessagePageStr+"</div>"
				return false
			}
			
			break;
		case 3://页内对照提示
			
			for(i=0; i<arrItem.length; i++){
				if(arrItem[i][7]!=""){
					if(arrItem[i][5]==0){
						window.document.all["M"+arrItem[i][2]].innerHTML = "<BR>"+arrItem[i][7]+"<BR>"
						
					}
					else{
						window.document.all["M"+arrItem[i][2]].innerHTML = arrItem[i][7]+"<BR>"
						
					}
				}
			}
			if(sMessagePageStr!=""){
				return false
			}
			break;
		case 4: //提示框题目编号汇总提示
			sMessagePageStr =""
			for(i=0; i<arrItem.length; i++){
				
				if(arrItem[i][7]!=""){					
					sMessagePageStr += (i+1)+"、 "
				}
			}
			if(sMessagePageStr!=""){
				sMessagePageStr = "Please select one option!"
				alert(sMessagePageStr)
				return false
			}
			break;
	}
	
	for(i=0; i<arrItem.length; i++){
		switch(parseInt(arrItem[i][3])){
			case 3:
				if(typeof(form1[arrItem[i][2]].checked)=="undefined"){//如果==undefined，则有大于1个选项
					for(j=0; j<form1[arrItem[i][2]].length;j++){
						if(form1[arrItem[i][2]][j].checked==true){						
							intPoint += parseInt(arrOption[form1[arrItem[i][2]][j].value][2])
							break;
						}
					}
				}
				else{
					if(form1[arrItem[i][2]].checked==true){						
						intPoint += parseInt(arrOption[form1[arrItem[i][2]].value][2])
						break;
					}
				}
				
				
				break;
			case 4:
				for(j=0; j<form1[arrItem[i][2]].length;j++){
					if(form1[arrItem[i][2]][j].checked==true){
						intPoint += parseInt(arrOption[form1[arrItem[i][2]][j].value][2])						
					}
				}
				break;
			case 5:
				for(j=0; j<form1[arrItem[i][2]].length;j++){
					if(form1[arrItem[i][2]][j].selected==true){
						intPoint += parseInt(arrOption[form1[arrItem[i][2]][j].value][2])
						break;
					}
				}
				break;
			
		}
	}
	form1.Point.value = intPoint	
	
	//alert(blnTemp)
}

function getCheckClass(sSrcStr,sCheckStr){
	if(sSrcStr.indexOf(sCheckStr)>-1){
		return true
	}
	else{
		return false
	}
}

function getMaxMinSelect(sSrcStr,sCheck){	
	var arrTemp,n,sTemp
	arrTemp = sSrcStr.split("|")
	for(n=0; n<arrTemp.length; n++){		
		if(arrTemp[n].indexOf(sCheck)>-1){			
			return parseInt(arrTemp[n].substr(sCheck.length))
			break;
		}
	}
}
