/** form_name = form name obj_name = obj msg_name = field name span_name = span name */ function countLength(stringToCount) { //計算有幾個全型字、中文字... var c = stringToCount.match(/[^ -~]/g); return stringToCount.length + (c ? c.length : 0); } function checkNetuiLength(netui_name,msg_name,checkLength,span_name){ var myObj = document.getElementById(netui_name); var myValue = trimString(myObj.value); if(countLength(myValue)>checkLength){ mySpan.innerHTML= msg_name + " 長度不可超過 "+checkLength; myObj.focus(); return false; } } function checkNetuiMinLength(netui_name,msg_name,checkLength,span_name) { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(span_name+"_Validate"); var myValue = myObj.value; if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if (myValue.length < checkLength) { mySpan.innerHTML= msg_name + "長度須大於"+checkLength+"碼"; myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkNetuiEmpty(netui_name,msg_name,span_name) // check string is null { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(span_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if (myValue == "" || myValue == " ") { mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkNetuiNum(netui_name,msg_name,span_name) { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(span_name+"_Validate"); re = /\D/; //是否含有非數字的字元,若有,會傳回true if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if (re.test(myObj.value)) { mySpan.innerHTML= msg_name + "只能輸入數字"; myObj.focus(); return false; } /* if (isNaN(myObj.value)) { mySpan.innerHTML= msg_name + "只能輸入數字"; myObj.focus(); return false; } */ mySpan.innerHTML= "*"; return true; } function checkRocID(netui_name,msg_name,span_name) { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(span_name+"_Validate"); var myValue = myObj.value; tab = "ABCDEFGHJKLMNPQRSTUVXYWZIO" A1 = new Array (1,1,1,1,1,1,1,1,1,1,2,2,2,2,2,2,2,2,2,2,3,3,3,3,3,3 ); A2 = new Array (0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5,6,7,8,9,0,1,2,3,4,5 ); Mx = new Array (9,8,7,6,5,4,3,2,1,1); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if ( myValue.length != 10 ) { mySpan.innerHTML= msg_name + "必須為10碼"; myObj.focus(); return false; } i = tab.indexOf( myValue.charAt(0) ); if ( i == -1 ) { mySpan.innerHTML= msg_name + "格式錯誤"; myObj.focus(); return false; } sum = A1[i] + A2[i]*9; for ( i=1; i<10; i++ ) { v = parseInt( myValue.charAt(i) ); if ( isNaN(v) ) { mySpan.innerHTML= msg_name + "格式錯誤"; myObj.focus(); return false; } sum = sum + v * Mx[i]; } if ( sum % 10 != 0 ) { mySpan.innerHTML= msg_name + "無效"; myObj.focus(); return false; } mySpan.innerHTML= ""; return true; } function checkNetuiPassword(netui_name,msg_name) // check string is null { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(netui_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if (myValue == "" || myValue == " ") { mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; }else if(myValue.length > 12){ mySpan.innerHTML= msg_name + " 長度須小於12碼!"; myObj.focus(); return false; }else if(myValue.length >= 8){ re1 = /^[A-Z]+[a-z]+[A-Za-z0-9]*$/; re2 = /^[A-Z]+[0-9]+[A-Za-z0-9]*$/; re3 = /^[a-z]+[A-Z]+[A-Za-z0-9]*$/; re4 = /^[a-z]+[0-9]+[A-Za-z0-9]*$/; re5 = /^[0-9]+[A-Z]+[A-Za-z0-9]*$/; re6 = /^[0-9]+[a-z]+[A-Za-z0-9]*$/; re7 = /^[0-9]+[a-z]+[A-Za-z0-9]*$/; re8 = /^[0-9]+[a-z]+[A-Za-z0-9]*$/; if(re1.test(myValue)||re2.test(myValue)||re3.test(myValue)|| re4.test(myValue)||re5.test(myValue)||re6.test(myValue)|| re7.test(myValue)||re8.test(myValue)){ }else{ mySpan.innerHTML= msg_name + " 需為長度8 ~12碼之英數混合字串!"; myObj.focus(); return false; } }else if(myValue.length < 8){ mySpan.innerHTML= msg_name + " 長度須大於8碼!"; myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkNetuiAddress(actionForm,netui_name,msg_name,theValue) // check string is null { var myForm = document.forms[0]; var myRadio = myForm.elements[netui_name+"_TYPE"]; var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(netui_name+"_Validate"); var mySel = ""; if(mySpan.innerHTML.indexOf('*') != -1){ mySpan.innerHTML = "*" } for(i=0;i< myRadio.length ;i++ ){ if(myRadio[i].checked==true){ mySel = myRadio[i].value; } } if(mySel==""){ mySpan.innerHTML += "請選擇 "+msg_name+"類型"; return false; }else if(mySel==theValue){ var myValue = trimString(myObj.value); if (myValue == "" || myValue == " ") { mySpan.innerHTML += msg_name + "不得為空白"; myObj.focus(); return false; } } mySpan.innerHTML= "*"; return true; } function checkNetuiTaiwanMobile(netui_name,msg_name) // check string is null { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(netui_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if(myValue == "" || myValue == " "){ mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; }else{ if(myValue.substr(0,2) == '09'){ if(trimString(myValue).length != 10){ mySpan.innerHTML= msg_name + " 長度錯誤(ex:09xxxxxxxx)"; myObj.focus(); return false; } }else if(myValue.substr(0,5) == '+8869'){ if(trimString(myValue).length != 13){ mySpan.innerHTML= msg_name + " 長度錯誤(ex:+8869xxxxxxxx)"; myObj.focus(); return false; } }else if(myValue.substr(0,5) == '8869'){ if(trimString(myValue).length != 12){ mySpan.innerHTML= msg_name + " 長度錯誤(ex:8869xxxxxxxx)"; myObj.focus(); return false; } }else{ mySpan.innerHTML= msg_name + " 非台灣台灣電信業者門號 "; myObj.focus(); return false; } } mySpan.innerHTML= "*"; return true; } function checkNetuiMobile(actionForm,netui_name,msg_name) // check string is null { var myForm = document.forms[0]; var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(netui_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if(myValue == "" || myValue == " "){ mySpan.innerHTML= msg_name + "不得為空白"; return false; }else { if(isNaN(myValue)){ mySpan.innerHTML= msg_name + " 需為數字!!"; myObj.focus(); return false; }else if(trimString(myValue).substr(0,2) != '09'){ mySpan.innerHTML= msg_name + " 格式錯誤(ex:09xxxxxxxx)!!"; myObj.focus(); return false; }else if(trimString(myValue).length != 10){ mySpan.innerHTML= msg_name + " 長度錯誤(ex:09xxxxxxxx)"; myObj.focus(); return false; } } mySpan.innerHTML= "*"; return true; } function checkNetuiEmail(netui_name,msg_name) // check string is null { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(netui_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if(myValue.length==0){ mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; }else{ var filter = /^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/; if(!(filter.test(myObj.value))){ mySpan.innerHTML= msg_name + "位址不合法"; myObj.focus(); return false; } } mySpan.innerHTML= "*"; return true; } function checkEmpty(obj_name,msg_name,span_name) // check string is null { var myObj = document.getElementById(obj_name); var mySpan = document.getElementById(span_name+"_Validate"); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } var myValue = trimString(myObj.value); if (myValue == "" || myValue == " ") { mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkNum(netui_name,msg_name,span_name) { var myObj = document.getElementById(netui_name); var mySpan = document.getElementById(span_name+"_Validate"); re = /\D/; //是否含有非數字的字元,若有,會傳回true if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if (re.test(myObj.value)) { mySpan.innerHTML= msg_name + "只能輸入數字"; myObj.focus(); return false; } /* if (isNaN(myObj.value)) { mySpan.innerHTML= msg_name + "只能輸入數字"; myObj.focus(); return false; } */ mySpan.innerHTML= "*"; return true; } function checkLength(obj_name,obj_len,msg_name) // check string is null { var myObj = document.getElementById(obj_name); var mySpan = document.getElementById(obj_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } if (myValue == "" || myValue == " ") { mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; } if(myValue.length > obj_len){ mySpan.innerHTML= msg_name + "不能超過" + len + "字元" myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkLength2(obj_name,formLocation,obj_len,msg_name) // check string is null { var obj = "document.forms["+formLocation+"]."+obj_name; var objSpan = "document.forms["+formLocation+"]."+obj_name+"_Validate"; var myObj = obj; var mySpan = objSpan; if(mySpan.innerHTML.indexOf('*') != -1){ msg_name = "*" + msg_name; } var myValue = trimString(myObj.value); if (myValue == "" || myValue == " ") { mySpan.innerHTML= msg_name + "不得為空白"; myObj.focus(); return false; } if(myValue.length > obj_len){ mySpan.innerHTML= msg_name + "不能超過" + len + "字元" myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkSelect(obj_name,msg_name,span_name) // check string is null { var myObj = document.getElementById(obj_name); var mySpan = document.getElementById(span_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ mySpan.innerHTML = "*" } if (myValue == "" || myValue == " ") { mySpan.innerHTML += "請選擇" + msg_name ; myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkSelectDash(obj_name,msg_name,span_name) // check string is null { var myObj = document.getElementById(obj_name); var mySpan = document.getElementById(span_name+"_Validate"); var myValue = trimString(myObj.value); if(mySpan.innerHTML.indexOf('*') != -1){ mySpan.innerHTML = "*" } if ( myValue == "----") { mySpan.innerHTML += "請選擇" + msg_name ; myObj.focus(); return false; } mySpan.innerHTML= "*"; return true; } function checkNetuiRadio(actionFormNo,radio_name,msg_name) // check string is null { var mySpan = document.getElementById(radio_name+"_Validate"); var myForm = document.forms[actionFormNo]; if(mySpan.innerHTML.indexOf('*') != -1){ mySpan.innerHTML = "*" } /*mark by eva 2012/5/25 if( radio_name == "GENDER" ){ radio_name = "gender"; } */ var myObj = document.getElementsByName(radio_name); var selFlag = false; for(i=0; i< myObj.length ; i++ ){ if(myObj[i].checked==true){ selFlag =true; } } if(!selFlag){ mySpan.innerHTML += "請選擇 "+msg_name ; return false; } mySpan.innerHTML= "*"; return true; } function ltrim(argvalue) { while (true) { if (argvalue.substring(0, 1) != " ") break; argvalue = argvalue.substring(1, argvalue.length); } return argvalue; } function rtrim(argvalue) { while (true) { if (argvalue.substring(argvalue.length - 1, argvalue.length) != " ") break; argvalue = argvalue.substring(0, argvalue.length - 1); } return argvalue; } function trimString(argvalue) { var tmpstr = ltrim(argvalue); return rtrim(tmpstr); } //open confirm button function openConfirmButton(){ document.getElementById("showConfirmButton").style.display = 'block'; } //open confirm button function closeConfirmButton(){ document.getElementById("showConfirmButton").style.display = 'none'; } //更改地址清空地址欄位 add by eva 2011/05/17 function addressSwitch(){ var address_o = document.getElementById("ADDRESS").value; var address_n = document.getElementById("ADDRESS_REPLACE").value; var address_diff = document.getElementById("ADDRESS_REPLACE_DIFF").value; //如有更改地址且含*字串清空地址欄位 if ( address_diff!= address_n && address_n.indexOf("*") != -1 ){ alert("修改地址欄位格式錯誤,請正確填寫!") document.getElementById("ADDRESS_REPLACE").focus(); return false ; }else if(address_diff!= address_n){ //set value document.getElementById("ADDRESS").value = document.getElementById("ADDRESS_REPLACE").value; return true ; } return true ; } //更改使用者姓名清空使用者姓名欄位 add by eva 2011/05/26 function userNameSwitch(){ var username_o = document.getElementById("USER_NAME").value; var username_n = document.getElementById("USER_NAME_REPLACE").value; var username_diff = document.getElementById("USER_NAME_REPLACE_DIFF").value; //如有更改使用者姓名且含*字串清空使用者姓名欄位 if ( username_diff!= username_n && username_n.indexOf("*") != -1 ){ alert("修改使用者姓名欄位格式錯誤,請正確填寫!") document.getElementById("USER_NAME_REPLACE").focus(); return false ; }else if(username_diff!= username_n){ //set value document.getElementById("USER_NAME").value = document.getElementById("USER_NAME_REPLACE").value; return true ; } return true ; } //更改送貨地址清空送貨地址欄位 add by eva 2011/05/17 function deliveryAddressSwitch(){ var address_o = document.getElementById("DELIVERYADDRESS").value; var address_n = document.getElementById("DELIVERYADDRESS_REPLACE").value; var address_diff = document.getElementById("DELIVERYADDRESS_REPLACE_DEFF").value; //如有更改地址且含*字串清空地址欄位 if ( address_diff!= address_n && address_n.indexOf("*") != -1 ){ alert("修改送貨地址欄位格式錯誤,請正確填寫!") document.getElementById("DELIVERYADDRESS_REPLACE").focus(); return false ; }else if(address_diff!= address_n){ //set value document.getElementById("DELIVERYADDRESS").value = document.getElementById("DELIVERYADDRESS_REPLACE").value; return true ; } return true; } //更改發票寄送地址清空發票寄送地址欄位 add by eva 2011/08/08 function InvoiceAddressSwitch(){ var address_o = document.getElementById("INVOICEADDRESS").value; var address_n = document.getElementById("INVOICEADDRESS_REPLACE").value; var address_diff = document.getElementById("INVOICEADDRESS_REPLACE_DEFF").value; //如有更改地址且含*字串清空地址欄位 if ( address_diff!= address_n && address_n.indexOf("*") != -1 ){ alert("修改發票寄送地址欄位格式錯誤,請正確填寫!") document.getElementById("INVOICEADDRESS_REPLACE").focus(); return false ; }else if(address_diff!= address_n){ //set value document.getElementById("INVOICEADDRESS").value = document.getElementById("INVOICEADDRESS_REPLACE").value; return true ; } return true; }