//######################################################### // 한글,영문 문자 길이 체크.. function LenStr(sValue) { nLen = 0; for (nI=0;nI "~") { nLen = nLen + 2; } else { nLen = nLen + 1; } } return nLen; } // 문자열 앞,뒤 공백제거 function TrimStr(str) { return str.replace(/(^\s*)|(\s*$)/g, ""); } // pos위치부터 ach 문자를 bch 문자로 변환 function ReplaceStr(str,ach,bch,pos) { var rstr = ""; for(i = pos; i= "0" && ch <= "9")) return false; } return true; } function ChkNum2(checkStr) { if(checkStr == "") return false; if(isNaN(checkStr)) return false; else return true; } // 영문인지를 체크.. function ChkEng(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z"))) return false; } return true; } // 숫자와 영문인지를 체크.. function ChkNumEng(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || (ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z"))) return false; } return true; } // 영문,숫자와 하이푼(-)인지를 체크.. function ChkNumEngHyphen(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || (ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z") || ch == "-")) return false; } return true; } // 숫자와 하이푼(-)인지를 체크.. function ChkNumHyphen(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || ch == "-")) { return false; } } return true; } // 숫자와 언더바(_)인지를 체크.. function ChkNumUBar(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || ch == "_")) { return false; } } return true; } // 숫자와 점(.)인지를 체크.. function ChkNumPoint(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || ch == ".")) { return false; } } return true; } // 영문,숫자와 언더바(_)인지를 체크.. function ChkNumEngUBar(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || (ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z") || ch == "_")) return false; } return true; } // 영문,숫자와 언더바(_),하이푼(-)인지를 체크.. function ChkNumEngUBarH(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || (ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z") || ch == "_" || ch == "-")) return false; } return true; } // 숫자와 슬래쉬(/)인지를 체크.. function ChkNumSlash(checkStr) { if(checkStr == "") return false; for(i = 0;i < checkStr.length;i++) { ch = checkStr.charAt(i); if(!((ch >= "0" && ch <= "9") || ch == "/")) { return false; } } return true; } // 첫글자가 영문인지 체크 function ChkFirstEng(checkStr) { ch = checkStr.charAt(0); if(!((ch >= "A" && ch <= "Z") || (ch >= "a" && ch <= "z"))) return false; return true; } // 특수문자 체크 function ChkSpChar(checkStr) { if(!(checkStr.indexOf('\\',0) != -1 || checkStr.indexOf('\"',0) != -1 || checkStr.indexOf('\'',0) != -1)) return false; return true; } // php 코딩((?, ?))이 들어있는지 체크 function ChkPhpChar(checkStr) { if(!(checkStr.indexOf('(?',0) != -1 || checkStr.indexOf('?)',0) != -1)) return false; return true; } //######################################################### // 유효한 날짜인지 체크 function isYYYYMMDD(y, m, d) { switch(m) { case "2": // 2월의 경우 case "02": if (d == 29) { // 2월 29의 경우 당해가 윤년인지를 확인 if((y % 4 != 0) || (y % 100 == 0) && (y % 400 != 0)) return false; else return true; } else if(d > 28 || d < 1) return false; else return true; break; case "4": // 작은 달의 경우 case "6": case "9": case "11": case "04": case "06": case "09": if (d > 30 || d < 1) return false; else return true; break; case "1": // 큰달의 경우 case "3": case "5": case "7": case "8": case "10": case "12": case "01": case "03": case "05": case "07": case "08": if(d > 31 || d < 1) return false; else return true; break; } return false; } //######################################################### // 주민등록번호 체크 function checkSSN(ssn) { var a1=ssn.substring(0, 1); var a2=ssn.substring(1, 2); var a3=ssn.substring(2, 3); var a4=ssn.substring(3, 4); var a5=ssn.substring(4, 5); var a6=ssn.substring(5, 6); var b1=ssn.substring(6, 7); var b2=ssn.substring(7, 8); var b3=ssn.substring(8, 9); var b4=ssn.substring(9, 10); var b5=ssn.substring(10, 11); var b6=ssn.substring(11, 12); var b7=ssn.substring(12, 13); var sum; sum=a1*2+a2*3+a3*4+a4*5+a5*6+a6*7+b1*8+b2*9+b3*2+b4*3+b5*4+b6*5; sum=sum%11; sum=11-sum; sum=sum%10; return (sum!=b7 ? false : true); } //주민번호 칸 이동 function JuminNext(form){ var str = form.jumin1.value.length; if(str == 6) form.jumin2.focus(); return false; } // 주민등록번호 체크 function isSSN(s1, s2) { n = 2; sum = 0; for(i=0; i "99" || mm < "01" || mm > "12" || dd < "01" || dd > "31") { //alert("주민등록번호 앞자리를 다시 입력하세요."); return false; } // 숫자가 아닌 것을 입력한 경우 if (!ChkNum(jumin2)) { //alert("주민등록번호 뒷자리를 숫자로 입력하세요."); return false; } // 길이가 7이 아닌 경우 if (jumin2.length != 7) { //alert("주민등록번호 뒷자리를 다시 입력하세요."); return false; } // 성별부분이 1 ~ 4 가 아닌 경우 if (genda < "1" || genda > "4") { //alert("주민등록번호 뒷자리를 다시 입력하세요."); return false; } // 연도 계산 - 1 또는 2: 1900년대, 3 또는 4: 2000년대 cc = (genda == "1" || genda == "2") ? "19" : "20"; // 첫번째 자료에서 연월일(YYMMDD) 형식 중 날짜 형식 검사 if (isYYYYMMDD(cc+yy, mm, dd) == false) { //alert("주민등록번호 앞자리를 다시 입력하세요."+cc+yy+":"+mm+":"+dd); return false; } // Check Digit 검사 if (!isSSN(jumin1, jumin2)) { //alert("입력한 주민등록번호를 검토한 후, 다시 입력하세요."); return false; } return true; } // 재외국인 번호 체크 function ChkFno(fgnno) { var sum=0; var odd=0; buf = new Array(13); for(i=0; i<13; i++) buf[i]=parseInt(fgnno.charAt(i)); odd = buf[7]*10 + buf[8]; if(odd%2 != 0) return false; if((buf[11]!=6) && (buf[11]!=7) && (buf[11]!=8) && (buf[11]!=9)) return false; multipliers = [2,3,4,5,6,7,8,9,2,3,4,5]; for(i=0, sum=0; i<12; i++) sum += (buf[i] *= multipliers[i]); sum = 11 - (sum%11); if(sum >= 10) sum -= 10; sum += 2; if(sum >= 10) sum -= 10; if(sum != buf[12]) return false; return true; } // 사업자 번호 체크 function ChkBno(vencod) { var sum = 0; var getlist =new Array(10); var chkvalue =new Array("1","3","7","1","3","7","1","3","5"); for(var i=0; i<10; i++) getlist[i] = vencod.substring(i, i+1); for(var i=0; i<9; i++) sum += getlist[i]*chkvalue[i]; sum = sum + parseInt((getlist[8]*5)/10); sidliy = sum % 10; sidchk = 0; if(sidliy != 0) sidchk = 10 - sidliy; else sidchk = 0; if(sidchk != getlist[9]) return false; return true; } // 이메일 유효성 체크 함수 function ChkEmail(str) { if(str == "") return false; for(i = 0; i < str.length; i++) { var buf = str.charAt(i); if(((buf >= "0") && (buf<="9")) || ((buf >= "A") && (buf<="Z")) || ((buf >= "a") && (buf<="z")) || (buf == "_") ||(buf == "-") || (buf == ".") || (buf == "@")) { } else return false; } if(str.indexOf("@") == -1 || str.indexOf(".") == -1) return false; if(str.length < 5) return false; return true; } //######################################################### // 소수점 2째자리 이상부터 계산 // 반올림 function Round2(num,dig) { var hdig = parseInt(dig); var hnum = eval(num); if(hdig < 2) return 0; var ik = 1; var cnum2; var cnum3; for(i = 0; i < hdig; i++) { ik = ik * 10; } cnum = hnum * ik; cnum2 = Math.round(cnum); cnum3 = cnum2/ik; return cnum3; } //################################################## //# 마우스 오버시 핸드속성만들기 function CursorHand(obj) { obj.style.cursor = "hand"; } // 숫자 3자리마다 , 찍는다. // onblur = "javascript:NumComma(this);" 이런형식으로 호출 // 숫자를 모두 입력하고 검사하자. 그렇지 않고 onKey 이벤트시 backspace로 숫자 지우기가 힘들다. // 소수점 이하 절사 function NumComma(obj,name1){ var sign = ""; var num = eval('(obj.value)'); num = new String(num); num = num.replace(/,/gi,""); if(num == "") { alert(name1+"을(를) 입력해 주세요."); obj.value = "0"; obj.focus(); return; } if(isNaN(num)) { alert(name1+"은(는) 숫자만 입력할 수 있습니다."); obj.value = "0"; obj.focus(); return; } if(num == 0) { return; } if(num < 0) { num = num*(-1); sign = "-"; }else{ num = num*1; } num = new String(num); var temp = ""; var pos = 3; if(num.indexOf(".") > 0) { num = num.substring(0,num.indexOf(".")); } num_len = num.length; while(num_len > 0) { num_len = num_len - pos; if(num_len < 0) { pos = num_len + pos; num_len = 0; } temp = "," + num.substr(num_len,pos) + temp; } obj.value = sign + temp.substr(1); } // 숫자 체크 function InputNumChk(obj,name1){ var sign = ""; var num = eval('(obj.value)'); num = new String(num); num = num.replace(/,/gi,""); if(num == "") { alert(name1+"을(를) 입력해 주세요."); obj.value = ""; obj.focus(); return; } if(isNaN(num)) { alert(name1+"은(는) 숫자만 입력할 수 있습니다."); obj.value = ""; obj.focus(); return; } if(num == 0) { return; } obj.value = num; } // , 제거 function RplcComMa(obj) { obj.value = ReplaceStr(obj.value,",","",0); }