﻿//参数说明
//1,form
//2,action动作参数
//3,问卷ID
//4,是否必填个人信息
//5 请求模式
function OnlineQuestionnaireResearch_frmSubmit(frm,action,QuestionnaireID,IsFillPersonalInfo,RequestMode)
{ 
   var m ,n;
   //时间
   var time = new Date();
  //判断是否允许提交问卷的回答的变量	 
   var allowSubmit = true ;
   //是否继续判断的变量
   var isGoOn =  true ;
   
   //判断字符是否合法.
     if (!(trim(RequestMode) == "PreviewDefault" && IsFillPersonalInfo == "false" )) {
    if (trim(frm.textfield_Postalcode.value) != "" && isGoOn == true) {		
                if(!isNumber(frm.textfield_Postalcode.value))
		{
			frm.textfield_Postalcode.focus();
			alert("请输入合法的邮政编码,如果超长将自动截取");
			isGoOn = false ;
			return false;
		}else	 {
		
		frm.textfield_Postalcode.value = frm.textfield_Postalcode.value.substring(0,6) ; 
		
		}	
    }
    if (trim(frm.textfield_Email.value) != "" && isGoOn == true) {		

             if(!isEmail(frm.textfield_Email.value))
		{
			frm.textfield_Email.focus();
			isGoOn = false ;
			alert("请输入合法的Email,如果超长将自动截取");
			return false;
		}
				
    }
    //判断是否默认问卷,且个人信息可以不写的结束	
    }		
  
   //判断是否必须回答个人信息	
   
if (IsFillPersonalInfo == "true" ) {
   	if (trim(frm.textfield_UserName.value) == ""  ){
   		alert("姓名必须填写");
   		frm.textfield_UserName.focus() ;
            allowSubmit = false ;  
         }else {
   	if (trim(frm.textfield_Address1.value) == "" ){
   		alert("联系单位必须填写");
   		frm.textfield_Address1.focus() ;
            allowSubmit = false ;  
         } else {
   	if (trim(frm.textfield_Address2.value) == "" ){
   		alert("联系地址必须填写");
   		frm.textfield_Address2.focus() ;
            allowSubmit = false ;  
         } else {
   	if (trim(frm.textfield_Postalcode.value) == "" ){
   		alert("邮政编码必须填写");
   		frm.textfield_Postalcode.focus() ;
            allowSubmit = false ;  
         } else {
   	if (trim(frm.textfield_Email.value) == "" ){
   		alert("Email必须填写");
   		frm.textfield_Email.focus() ;
            allowSubmit = false ;  
         }
         
         }
         }
         }
         }
         
         
   }
   //判断所有输入的"其他"框中的数据是否超长
  for(m=0;m< frm.length;m++) {
  	//当前项
        myElement = frm.elements[m];
        //判断是否判断必填项
        
	if (( myElement.name.indexOf("inputOther") != -1 || myElement.name.indexOf("textfield_") != -1 )&& !isNull(myElement.value)){
	     //myElement.value = myElement.value.substring(0,126);  
		 if (myElement.value.length > 127 ) 
		 {  
			 alert("数据长度超过了127个字符！");
			 myElement.focus();
			 return false;
		 }
        }
   }
 //如果上面的判断已经出现提示,则不再判断问题的是否必答的提示
 if (allowSubmit == true ) {       
  
   //判断是否必答的问题	 循环所有提交的项
  for(m=0;m< frm.length;m++) {
  	//当前项
        myElement = frm.elements[m];
        //判断是否判断必填项
        
	if ( myElement.name.indexOf("IsMustReply") != -1 && myElement.value =="true"){
	    //取得问题ID
	     var QuestionID = myElement.name.substr(12,myElement.name.length);	
	     //定义问题是否必答的判断变量
	     var isOk = false ; 
	     //取得当前问题的名字
	     var questionName  =  trim(frm.elements("questionName_"+QuestionID).value);
	    //循环指定问题的所有项	
	    for (n=0 ;n < frm.length ;n++){ 	
	    	//获得当前项
	   	childElement = frm.elements[n];
	   	
	   	if (childElement.name.indexOf(QuestionID) != -1){
	   		//如果是radio对象
	   	   if (childElement.type == "radio"){	
	   	   	isOk = childElement.checked;
	   	   	if (isOk == true ) {
	   	   	// alert(childElement.checked+"    radio");	
	   	   	  break ;	
	   	   	}
	   	    }
	   	    //如果是checkbox对象
	   	    if (childElement.type == "checkbox"){
	   	    		
	   	        isOk = childElement.checked;
	   	   	if (isOk == true ) {
	   	   	    //alert(childElement.checked+"   checkbox");
	   	   	    break ;
	   	        }
	   	    }
	   	    //如果是text对象
	   	    if (childElement.type == "text"){	
	   	        var str = childElement.value ;
	   	        if (trim(str) != "" ){
	   	            //	alert(childElement.name+"     input");
	   	           isOk = true ;
	   	           
	   	           break ;	
	   	        }
	   	    }
	   	   	
	   	}	
		
            }
            //如果当前必答的问题已经回答
            if (isOk == true){
            	
                continue  ;
            } else
            {
            //弹出必须回答的警告	
            alert(questionName+"必须回答!");
            allowSubmit = false ;	
               break ;	
            }	
	}
  }
  
 }
   //如果所有问题都是非必答项.则控制至少回答一个问题
  if (allowSubmit==true){
     var AllNull = true ;	
     for (n=0 ;n < frm.length ;n++){ 	
	    	//获得当前项
	   	childElement = frm.elements[n];
	   	
	   	if (childElement.type == "checkbox" ||childElement.type == "radio"){
	   	    if (childElement.checked == true )
	   	    {   AllNull = false ;
	   	  	break ;   		
	            }
	          
	        }
	   	if ( childElement.type == "text" &&  childElement.name.indexOf("textfield_")<0  ){  
	   	    if (trim(childElement.value)!=""){
	   	       AllNull = false ;	
	   	        break ;
	            }	 	   		
 	   		
         	}
      }
      if (AllNull == true){
        allowSubmit = false ;
        alert("至少填写一个答案才能提交,谢谢！");	
      }
  
 }	
  //如果所有的必答项都回答了.则允许提交!
  if (allowSubmit==true) {	
      frm.OnlineQuestionnaireResearch_action.value=action;
      if (!(trim(RequestMode) == "PreviewDefault" && IsFillPersonalInfo == "false" )) {
      frm.textfield_UserName.disabled = false ;
      frm.textfield_Address1.disabled = false ;
      frm.textfield_Address2.disabled = false ;
      frm.textfield_Postalcode.disabled = false ;
      frm.textfield_Email.disabled = false ;
      }
      frm.submit();
     alert("感谢您的参与。"); 

  }

}

//如果是单选,则输入其他时清空选择的选项

  function  ClearOtherRadio(frm,pQuestionID) 
  {
      //判断所有输入的 
      
      var m;
        for( m=0;m< frm.length;m++) {
  	//当前项
        myElement = frm.elements[m];
        //判断是否判断必填项

	if ( myElement.name.indexOf(pQuestionID) != -1 && myElement.name.indexOf("radio") != -1 ){
	  myElement.checked = false ;
        }
	}
  }
  //点击单选框时需要清空输入其他的数据
  function ClearRadio(frm,pQuestionID)
  {
 	     
      var m;
        for( m=0;m< frm.length;m++) {
  	//当前项
        myElement = frm.elements[m];
        //判断是否判断必填项

	if ( myElement.name.indexOf(pQuestionID) != -1 && myElement.name.indexOf("inputOther") != -1 ){
	  myElement.value = "";
        }
	}
  	
    	
  }
  
function TurnToReplyQuestion(frm,questionnaireID){	
	frm.action = "OnlineQuestionnaireResearch.html";
	frm.submit();	
}

//清空用户填写过的,从问卷简要页面带到问卷详细页面的个人信息
function clearForm(form){
	var num = form.length;
	for (i=0;i<num;i++){
		element = form.elements[i];
		//alert (element.name);
		if (element.name.indexOf("radio")!=-1||element.name.indexOf("checkbox")!=-1){
			element.checked = false;
		} 
		if (element.name.indexOf("input")!=-1 || element.name.indexOf("textfield")!=-1){
			element.value = "";
		}
	}
}