﻿
//
//
//	語法規則與技巧：
//	1. 在"  "之間顯示"的方法：將"取代為\"
//	2. 在'  '之間顯示'的方法：將'取代為\'
//
//
//
//
//
//




function HideAndShow (idName, num){
	var i=0
	while (document.getElementById(idName + i)!=null){
		if (i!=num){
			document.getElementById(idName + i).style.display = "none"; 
		}else{
			document.getElementById(idName + num).style.display = "block";
		}
	i=i+1	
	}
}
function HideAndShow_2 (idName, num1, num2){
	var i=0

		while ((document.getElementById(idName + i+ "0" )!=null)||(document.getElementById(idName + i+ "1" )!=null)){
				if (i==num1){
					if (num2==0){
						document.getElementById(idName + num1+ "0").style.display = "block";
						document.getElementById(idName + num1+ "1").style.display = "none";
					}
					if (num2==1){
						document.getElementById(idName + num1 + "0" ).style.display = "none"; 
						document.getElementById(idName + num1 + "1" ).style.display = "block"; 
					}
				}else{
						document.getElementById(idName + i + "0" ).style.display = "block"; 
						document.getElementById(idName + i + "1" ).style.display = "none"; 
				}
		i=i+1	
		}
}

function HideAndShow_2_Close (idName){
	var i=0
		while (document.getElementById(idName + i+ "0" )!=null){
			document.getElementById(idName + i+ "0").style.display = "block";
			document.getElementById(idName + i+ "1").style.display = "none";
		i=i+1	
		}
}
function showDiv(sDivID) {
	var oDiv = document.getElementById(sDivID);
  		if (oDiv.style.display=='block'){
			oDiv.style.display = 'none'
		}else{
			oDiv.style.display = 'block'
		}
}


//function AllFormsInfo(){
//		var data
//		var i
//		var j
//		
//			data="本頁表單數：" + document.forms.length + "<br>";
//			
//			for (i=0; i<=document.forms.length-1; i++){
//				data=data + ("第" + i + "號表單：<br>");
//				for (j=0; j<=document.forms[i].elements.length-1; j++){
//					data=data + ("　　第" + j + "個欄位（" + document.forms[i].elements[j].type + "）：" + document.forms[i].elements[j].name + "<br>");
//				}
//			}
//
//			return(data);
//}


function BlankStyle(FN){
	var data
	var i
		var j
		
			for (i=0; i<=document.forms[FN].length-1; i++){
				for (j=0; j<=document.forms[FN].elements.length-1; j++){
					data=data + ("　　第" + j + "個欄位（" + document.forms[FN].elements[j].type + "）：" + document.forms[FN].elements[j].name + "<br>");
				}
			}

			return(data);
}


function GetFormElementsType(FN){

		var data=""
		var inCircle=""
		var i
		var j
	
			for (i=0; i<=document.forms.length-1; i++){
				for (j=0; j<=document.forms[i].elements.length-1; j++){
					var Element_Name=document.forms[i].elements[j].name;
					var Element_Type=document.forms[i].elements[j].type;
					var Element_Value=document.forms[i].elements[j].Value;

					if ((Element_Name!="_Preview_Submit") && 
						(Element_Name!="_Sent_Data") && 
						(Element_Name!="_All_Elements_Value") && 
						(Element_Name!="_Form_Info") && 
						(Element_Type!="reset") && 
						(Element_Type!="submit")){
						inCircle=("[==" + document.forms[i].elements[j].name + "==][==" + document.forms[i].elements[j].type + "==]");
						data=data.replace(inCircle, "") + inCircle

					}
				}
			}

			data=("==]" + data + "[==");
			return(Give_ElementValue(FN, "GetFormElementsType", "textarea", data));

}


function Hidden_All_Elements_Info(FN){

		var data=""
		var inCircle=""
		var i
		var j
	
			for (i=0; i<=document.forms.length-1; i++){
				for (j=0; j<=document.forms[i].elements.length-1; j++){
					var Element_Name=document.forms[i].elements[j].name;
					var Element_Type=document.forms[i].elements[j].type;
					var Element_Value=document.forms[i].elements[j].Value;

					if ((Element_Name!="_Preview_Submit") && 
						(Element_Name!="_Sent_Data") && 
						(Element_Name!="_All_Elements_Value") && 
						(Element_Name!="_Form_Info") && 
						(Element_Type!="reset") && 
						(Element_Type!="submit")){
						inCircle=("[==" + document.forms[i].elements[j].name + "==][==" + document.forms[i].elements[j].type + "==]");
						data=data.replace(inCircle, "") + inCircle

					}
				}
			}

			data=("==]" + data + "[==");
			return(Give_ElementValue(FN, "_All_Elements_Value", "hidden", data));

}

function HtmlDeCode(str)   
  {   
        var   s   =   "";   
        if   (str.length   ==   0)   return   "";   
        for   (var   i=0;   i<str.length;   i++)   
        {   
              switch   (str.substr(i,1))   
              {   
                      case   "<"     :   s   +=   "&lt;";       break;   
                      case   ">"     :   s   +=   "&gt;";       break;   
                      case   "&"     :   s   +=   "&amp;";     break;   
                      case   "\'"   :   s   +=   "&#39;";     break;   
                      case   "\""   :   s   +=   "&quot;";   break;   
                      case   "\n"   :   s   +=   "<br>";       break;   
                      default       :   s   +=   str.substr(i,1);   break;   
              }   
        }   
        return   s;   
}   

function HtmlEnCode(str)   
  {   
        var   s   =   "";   
        if   (str.length   ==   0)   return   "";   
        for   (var   i=0;   i<str.length;   i++)   
        {   
              switch   (str.substr(i,1))   
              {   
                      case   "&lt;"     :   s   +=   "<";       break;   
                      case   "&gt;"     :   s   +=   ">";       break;   
             //         case   "&amp;"     :   s   +=   "&";     break;   
             //         case   "&#39;"   :   s   +=   "\'";     break;   
              //        case   "&quot;"   :   s   +=   "\"";   break;   
              //        case   "<br>"   :   s   +=   "\n";       break;   
                      default       :   s   +=   str.substr(i,1);   break;   
              }   
        }   
        return   s;   
}   

function Replace_vbCrLF(FN){			
		var i
		
			for (i=0; i<=document.forms[FN].elements.length-1; i++){
				var ElementValue=document.forms[FN].elements[i].value;
				switch(document.forms[FN].elements[i].type){
					case "textarea":
						ElementValue=ElementValue.replace(/\n/g, "<br/>");
						document.forms[FN].elements[i].value=ElementValue;
						break;
				}
			}

}

function Replace_vbCrLFByName(FN, BlankName){			
		var i
		var ElementValue=document.forms[FN].elements[BlankName].value;
			ElementValue=ElementValue.replace(/\n/g, "<br/>");
			ElementValue=ElementValue.replace(/<br\/>/g, "<br\/>\n");
			document.forms[FN].elements[BlankName].value=ElementValue;

}

function Replace_vbCrLF_SpaceByName(FN, BlankName){			
		var i
		var ElementValue="　　" + document.forms[FN].elements[BlankName].value;
			ElementValue=ElementValue.replace(/\n/g, "\n　　");
		//	ElementValue=ElementValue.replace(/\n/g, "<br/>　　");
		//	ElementValue=ElementValue.replace(/<br\/>/g, "<br\/>\n");
			document.forms[FN].elements[BlankName].value=ElementValue;

}

function Replace_vbCrLF_Space(FN){			
		var i

			for (i=0; i<=document.forms[FN].elements.length-1; i++){
				var ElementValue="　　" + document.forms[FN].elements[i].value;
				switch(document.forms[FN].elements[i].type){
					case "textarea":
						ElementValue=ElementValue.replace(/\n/g, "<br/>　　");
						document.forms[FN].elements[i].value=ElementValue;
						break;
				}
			}
}

function Add_vbCrLF(FN){
		var i

			for (i=0; i<=document.forms[FN].elements.length-1; i++){
				var ElementValue="" + document.forms[FN].elements[i].value;
				switch(document.forms[FN].elements[i].type){
					case "textarea":
						ElementValue=ElementValue.replace(/<br\/>/g, "<br\/>\n");
						document.forms[FN].elements[i].value=ElementValue;
						break;
				}
			}


}




function Give_ElementValue(FN, ElementName, ElementType, ElementValue){			
		var i
		var j
		var k
		var m
		var detect=false
		
			for (m=0; m<=document.forms[FN].elements.length-1; m++){
				//if (document.forms[FN].elements[ElementName]==document.forms[FN].elements[m]){
				//	detect=true
				//}
				if (typeof(document.forms[FN].elements[ElementName])=="object"){
					detect=true
				}
				
			}
		
			if (detect==true){
			for (i=0; i<=document.forms[FN].elements.length-1; i++){
				switch(ElementType){
					case "hidden":
									document.forms[FN].elements[ElementName].value=ElementValue;
									break;

					case "text":
									document.forms[FN].elements[ElementName].value=ElementValue;
									break;
					case "textarea":
									document.forms[FN].elements[ElementName].value=ElementValue;
									break;

					case "radio":
					
									if (document.forms[FN].elements[i].value==ElementValue){
											document.forms[FN].elements[i].checked=true;
									}
									break;
									
					case "checkbox":
								if (document.forms[FN].elements[i].name==ElementName)  {
										if (typeof(ElementValue)=="object"){		//如果是陣列
													for (k=0; k<=ElementValue.length-1;k++){
														if (document.forms[FN].elements[i].value==ElementValue[k]){
																document.forms[FN].elements[i].checked=true;
														}
													}
										}else{
													if (document.forms[FN].elements[i].value==ElementValue)  {
															document.forms[FN].elements[i].checked=true;
														
													}

										}
								}
									break;
									
					case "select-multiple":
										if (typeof(ElementValue)=="object"){		//如果是陣列
											for (j=0; j<=document.forms[FN].elements[ElementName].options.length-1;j++){
												for (k=0; k<=ElementValue.length-1;k++){
													if (document.forms[FN].elements[ElementName].options[j].value==ElementValue[k]){
														document.forms[FN].elements[ElementName].options[j].selected=true;
													}
												}
											}
										}else{
											for (j=0; j<=document.forms[FN].elements[ElementName].options.length-1;j++){
													if (document.forms[FN].elements[ElementName].options[j].value==ElementValue){
														document.forms[FN].elements[ElementName].options[j].selected=true;
													}
											}
										}

									break;

					case "select-one":
									for (j=0; j<=document.forms[FN].elements[ElementName].options.length-1;j++){
											if (document.forms[FN].elements[ElementName].options[j].value==ElementValue){
												document.forms[FN].elements[ElementName].options[j].selected=true;
											}
									}
									break;

					//default:
					//				document.forms[FN].elements[ElementName].value=ElementValue;
					//				break;

				}
				}
			}	
}



function PreviewSubmit(FN){

	var data="";
	var i
	var j

	for (i=0; i<=document.forms[FN].elements.length-1; i++) {
		var ElementType=document.forms[FN].elements[i].type
		
		switch (ElementType) {
				case "radio":
							if (document.forms[FN].elements[i].checked==true) {
								data=data + "<b>" + document.forms[FN].elements[i].name  + "</b>"
								data=data + "<span style='font-size:12px'>（"
								data=data + document.forms[FN].elements[i].type  + "/"
								data=data + "Check=" + document.forms[FN].elements[i].checked + "/"
								data=data + "Selected=" + document.forms[FN].elements[i].Selected
								data=data + ")</span>"
								data=data + "：" + document.forms[FN].elements[i].value +""
								data=data + "<hr size='0'>";
							}
							break;
				case "select-multiple":
							var String=""
							var Count=true
							for (j=0; j<=document.forms[FN].elements[i].options.length-1; j++){
								if (document.forms[FN].elements[i].options[j].selected==true) {
									String=String + "<b>" + document.forms[FN].elements[i].name  + "</b>"
									String=String + "<span style='font-size:12px'>（"
									String=String + document.forms[FN].elements[i].type  + "/"
									String=String + "Check=" + document.forms[FN].elements[i].options[j].checked + "/"
									String=String + "Selected=" + document.forms[FN].elements[i].options[j].selected
									String=String + ")</span>"
									String="<hr size='0'>"


									if (Count==true){				//初始的動作
										data=data + String;
										Count=false;
									}
									data=data.replace(String, String + "<div style='padding-left:20px;padding-right:20px'>" + document.forms[FN].elements[i].options[j].text + "[value=" + document.forms[FN].elements[i].options[j].value + "]</div>")
								}
							}
							break;
				case "checkbox":
							if (document.forms[FN].elements[i].checked==true){

								data=data + "<b>" + document.forms[FN].elements[i].name  + "</b>"
								data=data + "<span style='font-size:12px'>（"
								data=data + document.forms[FN].elements[i].type  + "/"
								data=data + "Check=" + document.forms[FN].elements[i].checked + "/"
								data=data + "Selected=" + document.forms[FN].elements[i].Selected
								data=data + ")</span>"
								data=data + "：" + document.forms[FN].elements[i].value +""
								data=data + "<hr size='0'>";

							}
							break;
				case "submit":
							break;
				case "button":
							break;
				case "reset":
							break;
				case "hidden":
							if (document.forms[FN].elements[i].name!="_All_Elements_Value") {			//先排除_All_Elements_Value等欄位，不讓之顯示出來
								
								data=data + "<b>" + document.forms[FN].elements[i].name  + "</b>"
								data=data + "<span style='font-size:12px'>（"
								data=data + document.forms[FN].elements[i].type  + "/"
								data=data + "Check=" + document.forms[FN].elements[i].checked + "/"
								data=data + "Selected=" + document.forms[FN].elements[i].Selected
								data=data + ")</span>"
								data=data + "：" + document.forms[FN].elements[i].value +""
								data=data + "<hr size='0'>";

							}
							break;
							
				default:
							if (document.forms[FN].elements[i].value!=""){
								data=data + "<b>" + document.forms[FN].elements[i].name  + "</b>"
								data=data + "<span style='font-size:12px'>（"
								data=data + document.forms[FN].elements[i].type  + "/"
								data=data + "Check=" + document.forms[FN].elements[i].checked + "/"
								data=data + "Selected=" + document.forms[FN].elements[i].Selected
								data=data + ")</span>"
								data=data + "<div style='padding-left:20px;padding-right:20px'>" + document.forms[FN].elements[i].value +"</div>"
								data=data + "<hr size='0'>";
							}
							break;
		}
	}
	var Body
		Body="<html><meta http-equiv='Content-Language' content='zh-tw'><meta http-equiv='Content-Type' content='text/html; charset=big5'>"
		Body=Body + "<body bgcolor='#F7F7F0'>"
	if ((document.defaultCharset=="big5")){
		Body=Body + "<form method='POST' name='NewForm' action='i_Page_Preview_UTF8.asp'>"
	}else{
		Body=Body + "<form method='POST' name='NewForm' action='i_Page_Preview_BIG5.asp'>"
	}
		Body=Body + "<div style=';padding:5px'><input type='submit' value='切換至「非同步預覽」(目前編碼：" + document.defaultCharset + ")' style='font-size:12px;border: 0px;background-color:orange'></div><hr size='0'>"
		Body=Body + data
		Body=Body + "<textarea name='PreviewData' style='width:100%;height:100px;display:none'>" + data.replace(/textarea/g, "t_e_x_t_a_t_e_a") + "</textarea>"
		Body=Body + "</form></body>"

	WriteIframe("IframeShow", Body);
}



function WriteIframe(FrameName, data){				//寫入Iframe視窗
		window.frames[FrameName].document.open();
		window.frames[FrameName].document.write(data);
		window.frames[FrameName].document.close();
}


//------------------------------------------------------------------------------------------


















