웹모아
웹모아[손님] 검색   로그인    


 
폼체크-예제
 


자바스크립트 공통함수
  2006-02-22 18:12:40 작성:상큼한여자 댓글:(0)   조회:4900


//////////////////////////////////////////////////////////////////////////
//   자바스크립트 공통함수             //
//                  //
//   주의: 아래의 모든 메소드는 입력폼의 필드이름(myform.myfield)을   //
//        파라미터로 받는다. 필드의 값(myform.myfield.value)이 아님을  //
//        유념할 것.              //
//////////////////////////////////////////////////////////////////////////

/** 영문자와 숫자로만 이루어졌는지 Check */
String.prototype.isid = function() {
 if(this.search(/[^A-Za-z0-9_-]/) == -1)
  return true;
 else 
  return false;
}

/** 전화번호 Check */
String.prototype.istel = function() {
 if(this.search(/[^0-9_-]/) == -1)
  return true;
 else 
  return false;
}

/** 영문자만 이루어졌는지 Check */
String.prototype.isalpha = function() {
 if(this.search(/[^A-Za-z]/) == -1)
  return true;
 else
  return false;
}

/** 숫자로만 이루어졌는지 Check */
String.prototype.isnumber = function() {
 if(this.search(/[^0-9]/) == -1)
  return true;
 else
  return false;
}

/** 주민등록번호 Check */
String.prototype.isjumin = function() {
 var jumin= this;
 if(jumin.length  != 13) 
  return false;
 tval=jumin.charAt(0)*2 + jumin.charAt(1)*3 + jumin.charAt(2)*4
 + jumin.charAt(3)*5 + jumin.charAt(4)*6 + jumin.charAt(5)*7
 + jumin.charAt(6)*8+ jumin.charAt(7)*9 + jumin.charAt(8)*2
 + jumin.charAt(9)*3 + jumin.charAt(10)*4 + jumin.charAt(11)*5;

 tval2=11- (tval % 11);
 tval2=tval2 % 10;
 
 if(jumin.charAt(12)==tval2 &&  (jumin.charAt(6)=="1" ||jumin.charAt(6)=="2")) {
  return true;
 }
 else{
  return false ;
 }
}

/** E-Mail Check */
String.prototype.isemail = function() {
 if(this.search(/(.+)@.+\..+/) == -1)
  return false;
 else {
  for(var i=0; i < this.length;i++)
   if(this.charCodeAt(i) > 256)
    return false;
  return true;
 }
}

/** 날짜 Check (YYYY-MM-DD) */
String.prototype.isdate = function() {
 if(this.search(/\d{4}\-\d{2}\-\d{2}/) == -1)
  return false;
 else {
  return true;
 }
}

/** 한글을 2글자로 계산하여 순수한 길이를 계산한다 */
String.prototype.strLen = function() {
 var temp;
 var set = 0;
 var mycount = 0;

 for( k = 0 ; k < this.length ; k++ ){
  temp = this.charAt(k);

  if( escape(temp).length > 4 ) {
   mycount += 2
  }
  else mycount++;
 }

 return mycount;
}

/** 앞 공백 제거 */
String.prototype.ltrim = function() {
 var i, j = 0;
 var objstr

 for ( i = 0; i < this.length ; i++){
  if(this.charAt(i) == ' ' ){
   j = j + 1;
  }
  else{
   break;
  }
 }
 return this.substr(j, this.length - j+1)  
}

/** 뒤 공백 제거 */
String.prototype.rtrim = function() {
 var i, j = 0;

 for ( i = this.length - 1; i >= 0 ; i--){
  if(this.charAt(i) == ' ' ){
   j = j + 1
  }
  else{
   break;
  }
 }
 return  this.substr(0, this.length - j);
}

/** 앞/뒤 공백 제거 */
String.prototype.trim = function() {
 return this.replace(/\s/g, "");
}

/** Focus 맞춤 */
function _cmdfocus(formobj){
 formobj.select();
 formobj.focus();
}

// formField : 폼 오브젝트
// checkName : 체크하려는 오브젝트 명
// 
function ChkForm(formField, checkName, message, minlength, maxlength) { 
 
 var formValue = formField.value.ltrim().rtrim();

 // 주민등록번호가 아닐 경우 길이 Check
 if((checkName != 'ssn') && (checkName != 'ncssn') || (minlength == maxlength == 0)){
  if(formField == null) return false;
  if(formValue == '/' && minlength > 0) { alert(message+" 필수입력 항목입니다."); _cmdfocus(formField); return false; }
  if(formValue.strLen() < minlength) { alert(message+" 최소 "+minlength+" 자이상 입력하세요."); _cmdfocus(formField); return false; }
  if(formValue.strLen() > maxlength) { alert(message+" 최대 영어 "+maxlength+"자, 한글 "+maxlength/2+"자까지 입력 가능합니다."); _cmdfocus(formField); return false; }
 }  

 switch(checkName) {
  case "" : return true;

  // 영문자로만 이루어져 있는지
  case "alpha" :
   if(formValue.isalpha()) { return true; }
   else { alert(message + " 영문자만 입력 가능 합니다.");  _cmdfocus(formField); return false; }
   break;

  // 숫자로만 이루어져있는지..
  case "number" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능 합니다."); _cmdfocus(formField); return false; }
   break;

  // 주민등록번호인지..
  case "pssn" :
   if(formValue.strLen() != 13) { alert("주민등록번호를 정확히 입력해 주세요."); return false; }

   if(formValue.isjumin()) { return true; }
   else { alert("주민등록번호를 정확히 입력해 주세요."); return false; }
   break;

  // 부모님 E-Mail 체크
  case "pemail" :
   if(formValue.isemail()) { return true; }
   else { alert("E-Mail 형식이 틀립니다. 다시 입력해 주세요 (형식 : account@localhost.com)"); _cmdfocus(formField); return false; }
   break;

  // 영문자와 숫자로만 이루어져 있는지
  case "userid" :
   if(formValue.isid()) { return true; }
   else { alert(message + " 영문자와 숫자만 입력 가능 합니다."); _cmdfocus(formField); return false; }
   break;

  // 영문자와 숫자로만 이루어져 있는지
  case "passwd" :
   if(formValue.isid()) { return true; }
   else { alert(message + " 영문자와 숫자만 입력 가능 합니다."); _cmdfocus(formField); return false; }
   break;

  // E-Mail인지
  case "email" :
   if(formValue.isemail()) { return true; }
   else { alert("E-Mail 형식이 틀립니다. 다시 입력해 주세요 (형식 : account@localhost.com)"); _cmdfocus(formField); return false; }
   break;

  // 우편번호1
  case "zip1" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다. "); return false; }
   break;

  // 우편번호2
  case "zip2" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다. "); return false; }
   break;

  // 주소1
  case "addr1" :
   if(formValue.trim()) { return true; }
   else { alert(message + " 주소를 입력해 주세요."); return false; }
   break;

  // 주소2
  case "addr2" :
   if(formValue.trim()) { return true; }
   else { alert(message + " 주소를 입력해 주세요."); return false; }
   break;

  // 전화번호 지역번호
  case "tel1" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 전화번호 국번
  case "tel2" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 전화번호
  case "tel3" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 이동통신사 번호
  case "mobile1" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 이동통신사 국번
  case "mobile2" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 이동통신사 전화번호
  case "mobile3" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 생일 - 연도
  case "byear" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 생일 - 월
  case "bmonth" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 생일 - 일
  case "bday" :
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 결혼기념일 - 연도
  case "myear" :
   if(formValue == "") return true;
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 결혼기념일 - 월
  case "mmonth" :
   if(formValue == "") return true;
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 결혼기념일 - 일
  case "mday" :
   if(formValue == "") return true;
   if(formValue.isnumber()) { return true; }
   else { alert(message + " 숫자만 입력 가능합니다."); _cmdfocus(formField); return false; }
   break;

  // 주민등록번호인지..
  case "ssn" :
   if(formValue.strLen() != 13) { alert("주민등록번호를 정확히 입력해 주세요."); return false; }

   if(formValue.isjumin()) { return true; }
   else { alert("주민등록번호를 정확히 입력해 주세요."); return false; }
   break;

  // 날짜인지 (YYYY-MM-DD)
  case "bdate" :
   if(formValue.isdate()) { return true; }
   else { alert("날짜 형식이 틀립니다. 다시 입력해 주세요 (형식: 2002-09-20)");  _cmdfocus(formField); return false; }
   break;

  // 그 외의 경우는 true 리턴...
  default : return true;
 }
}


// 아이디 중복체크
function DuplicationIDCheck(form) {
 alert("아이디 중복체크를 클릭하셨습니다.");
}

// 년도를 입력받아서 가능한 년도인지를 체크한다.
function CheckYear(year) {
 var today = new Date();
 if(parseInt(year.value) > parseInt(today.getYear())) {
  alert(today.getYear()+"년도 보다 큽니다.\n\n다시 입력해 주세요.");
  return false;
 }
 return true;
}

// 월을 입력받아서 가능한 월인지를 체크한다.
function CheckMonth(year, month) {
 var today = new Date();
 if(parseInt(year.value) >= today.getYear()) {
  if(parseInt(month.value) > today.getMonth()+1) {
   alert(today.getYear()+"년 "+(today.getMonth()+1)+"월보다 큽니다.\n\n다시 입력해 주세요.");
   return false;
  }
 }
 if(parseInt(month.value) < 1 || parseInt(month.value) > 12) {
  alert("1월부터 12월까지의 범위를 벗어났습니다.\n\n다시 입력해 주세요.");
  return false;
 }
 return true;
}

// 년/월/일을 입력받아서 가능한 일인지를 체크한다 - 윤년포함.
function CheckDay(cyear, cmonth, cday) {
 var today = new Date();
 var year = parseInt(cyear.value);
 var month = parseInt(cmonth.value);
 var day = parseInt(cday.value);
 if(parseInt(year) >= today.getYear() && parseInt(month) >= today.getMonth()+1) {
  if(parseInt(day) > today.getDate()) {
   alert(today.getYear()+"년 "+(today.getMonth()+1)+"월 "+today.getDate()+"일보다 큽니다.\n\n다시 입력해 주세요.");
   return false;
  }
 }

 if(checkLeapYear(year, month) < day) {
  alert(year+"년 "+month+"월은 "+checkLeapYear(year, month)+"일까지만 존재합니다.\n\n다시 입력해 주세요.");
  return false;
 }
 return true;
}

// 용 도 : 입력 값이 NULL인지 체크
// return : boolean  
//          NULL이면 true, 아니면 false가 돌아간다.
function isNull(input) {
 if(input.value == null || input.value == "") return true;
 return false;
}

// 용 도 : 입력 값이 NULL인지 확인하여 NULL이면 msg를 출력한다.
// return : boolean  
//          NULL이면 true, 아니면 false가 돌아간다.
function isNullAlert(input, msg) {
    var ret = isNull(input);
 if(ret) alert(msg);
 return ret;
}

// 용 도 : 입력 값에 Space 이외의 의미있는 값이 있는지 체크
// return : boolean  
//          있으면 true, 아니면 false가 돌아간다.
function isEmpty(input) {
 if(input.value == null || input.value.replace(/ /gi,"") == "") return true;
 return false;
}

// 용 도 : 입력 값에 Space 이외의 의미밌는 값이 없으면 msg를 출력한다.
// return : boolean  
//           space 이외의 의미있는 값이 없으면 true, 아니면 false가 돌아간다.
function isEmptyAlert(input, msg) {
 var ret = isEmpty(input);
 if(ret) alert(msg);
 return ret;
}

// 용 도 : 입력 값에 특정 문자(chars)가 있는지 체크한다. 특정 문자를 허용하지 않으려 할 때 사용
// return : boolean
//          있으면 true, 없으면 false 
// 사 용 예 : if(containsChars(form.name,"!,*&^%$#@~;")) {
//               alert("이름 필드에는 특수 문자를 사용할 수 없습니다.");
//           }
function containsChars(input, chars) {
 for(var inx = 0; inx < input.value.length; inx++)
  if(chars.indexOf(input.value.charAt(inx)) != -1)
  return true;
 return false;
}

// 용 도 : 입력 값이 특정 문자(chars)만으로 되어있는지 체크한다. 특정 문자만 허용하려 할 때 사용
// return : boolean
//          확인하려는 대상 문자만 있으면 true, 아니면 false
// 사 용 예 : if(!containsCharsOnly(form.blood,"ABO")) {
//               alert("혈액형 필드에는 A,B,O 문자만 사용할 수 있습니다.");
//           }
function containsCharsOnly(input, chars) {
 for (var inx = 0; inx < input.value.length; inx++)
  if(chars.indexOf(input.value.charAt(inx)) == -1)
   return false;
 return true;
}

// 용 도 : 입력 값이 알파벳인지 체크한다. 
//        아래 isAlphabet() 부터 isNumComma()까지의 메소드가 자주 쓰이는 경우에는 var chars 변수를 global 변수로 선언하고 사용하도록 한다.
// return : boolean, A에서 Z 까지의 문자만으로 되어있으면 true, 아니면 false
// 사 용 예 : ex) var uppercase = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
//               var lowercase = "abcdefghijklmnopqrstuvwxyz"; 
//               var number = "0123456789";
//               function isAlphaNum(input) {
//                   var chars = uppercase + lowercase + number;
//                   return containsCharsOnly(input,chars);
//               }
function isAlphabet(input) {
 var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
 return containsCharsOnly(input, chars);
}

// 용 도 : 입력 값이 알파벳인지 확인하여 알파벳 이외의 문자가 있으면 "영문자만 입력가능 합니다." 메시지를 보여주고 결과를 돌려준다.
// return : boolean, A에서 Z 까지의 문자만으로 되어있으면 true, 아니면 false
function isAlphabetAlert(input) {
 var ret = isAlphabet(input);
 if(!ret) alert("영문자만 입력가능 합니다.");
 return ret;
}

// 용 도 : 입력 값이 알파벳 대문자인지 체크
// return : boolean, 대문자만이면 true, 아니면 false  
function isUpperCase(input) {
 var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
 return containsCharsOnly(input, chars);
}

// 용 도 : 입력 값이 알파벳 대문자인지 확인하여 대문자 이외의 문자가 있으면 "알파벳 대문자만 입력하실 수 있습니다."라는 메시지를 보여주고 돌려준다.
// return : boolean, 대문자만이면 true, 아니면 false  
function isUpperCaseAlert(input) {
 var ret = isUpperCase(input);
 if(!ret) alert("알파벳 대문자만 입력하실 수 있습니다.");
 return ret;
}

// 용 도 : 입력 값이 알파벳 소문자인지 체크
// return : boolean 소문자만이면 true, 아니면 false
function isLowerCase(input) {
 var chars = "abcdefghijklmnopqrstuvwxyz";
 return containsCharsOnly(input, chars);
}

// 용 도 : 입력 값이 알파벳 소문자인지 확인하여 소문자 이외의 문자가 있으면  "알파벳 소문자만 입력하실 수 있습니다."라는 메시지를 보여주고 돌려준다.
// return :  boolean  소문자만이면 true, 아니면 false
function isLowerCaseAlert(input) {
 var ret = isLowerCase(input);
 if(!ret) alert("알파벳 소문자만 입력하실 수 있습니다.");
 return ret;
}

// 용 도 : 입력 값에 숫자만 있는지 체크
// return : boolean 숫자만 있으면 true, 아니면 false 
function isNumber(input) {
 var chars = "0123456789";
 return containsCharsOnly(input, chars);
}

// 용 도 : 입력 값에 숫자만 있는지 확인하여 숫자 이외의 문자가 있으면 "숫자만 입력 가능합니다"라는 메시지를 보여주고 돌려준다.
// return :  boolean 숫자만 있으면 true, 아니면 false   
function isNumberAlert(input) {
 var ret = isNumber(input);
 if(!ret) alert("숫자만 입력 가능합니다");
 return ret;
}

// 용 도 : 입력 값이 알파벳, 숫자로 되어있는지 체크
// return : boolean 알파벳과 숫자만이면 true, 아니면 false  
function isAlphaNum(input) {
 var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
 return containsCharsOnly(input, chars);
}

// 용 도 : 입력 값이 알파벳, 숫자로 되어있는지 확인하여 알파벳과 숫자 이외의 문자가 있으면 "영문자와 숫자 입력만 가능합니다."라는 메시지를 보여주고 돌려준다.
// return : boolean 알파벳과 숫자만이면 true, 아니면 false
function isAlphaNumAlert(input) {
    var ret = isAlphaNum(input);
 if(!ret) alert("영문자와 숫자 입력만 가능합니다.");
 return ret;
}

// 용 도 : 입력 값이 숫자,대시(-)로 되어있는지 체크
// return : boolean 숫자와 대시(-)로 되어 있으면 true, 아니면 false  
function isNumDash(input) {
 var chars = "-0123456789";
 return containsCharsOnly(input,chars);
}

// 용 도 : 입력 값이 숫자,대시(-)로 되어있는지 확인하여 숫자와 대시(-) 이외의 문자가 있으면 체크 "숫자와 '-' 입력만 가능합니다."라는 메시지를 보여주고 돌려준다.
// return :  boolean 숫자와 대시(-)로 되어 있으면 true, 아니면 false
function isNumDashAlert(input) {
 var ret = isNumDash(input);
 if(!ret) alert(" 숫자와 '-' 입력만 가능합니다.");
 return ret;
}

// 용 도 : 입력 값이 숫자,콤마(,)로 되어있는지 체크
// return : boolean 숫자와 콤마(,)로 되어 있으면 true 아니면 false 
function isNumComma(input) {
 var chars = ",0123456789";
 return containsCharsOnly(input,chars);
}

// 용 도 : 입력 값이 숫자,콤마(,)로 되어있는지 확인하여 숫자와 콤마(,) 이외의 문자가 있으면 체크 " 숫자와 ',' 입력만 가능합니다."라는 메시지를 보여주고 돌려준다.
// return :  boolean  숫자와 콤마(,)로 되어 있으면 true, 아니면 false
function isNumCommaAlert(input) {
 var ret = isNumComma(input);
 if(!ret) alert("숫자와 ',' 입력만 가능합니다.");
 return ret;
}

// 용 도 : 입력 값에서 콤마를 없앤다.
// return : string, 입력값에서 콤마를 없앤 값 
function removeComma(input) {
 return input.value.replace(/,/gi,"");
}

// 용 도 : 입력 값이 사용자가 정의한 포맷 형식인지 체크한다. 자세한 format 형식은 자바스크립트의 'regular expression'을 참조
// return : boolean 올바른 포맷이면 true, 아니면 false 
function isValidFormat(input, format) {
 if(input.value.search(format) != -1) return true; //올바른 포맷 형식
 return false;
}

// 용 도 : 입력 값이 사용자가 정의한 포맷 형식인지 확인하여 올바르지 않은 형식이면 "올바른 입력형식이 아닙니다." 메시지를 보여주고 돌려준다.
// return : boolean 올바른 포맷이면 true, 아니면 false
function isValidFormatAlert(input, format) {
 var ret = isValidFormat(input, format);
 if(!ret) alert("올바른 입력형식이 아닙니다.");
 return ret;
}

//용 도 : 입력 값이 이메일 형식인지 체크
// return : boolean 이메일 형식이면 true, 아니면 false
function isValidEmail(input) {
 var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
 return isValidFormat(input, format);
}

//용 도 : 입력 값이 이메일 형식인지 확인하여 올바르지 않으면 "이메일 입력형식이 잘못되었습니다. \n 확인후 다시 입력해 주세요."라는 메시지를 보여주고 돌려준다.
// return :  boolean 이메일 형식이면 true, 아니면 false
function isValidEmailAlert(input) {
 var ret = isValidEmail(input);
 if(!ret) alert("이메일 입력형식이 잘못되었습니다. \n 확인후 다시 입력해 주세요.");
 return ret;
}

// 용 도 : 입력 값이 전화번호 형식(숫자-숫자-숫자)인지 체크
// return : boolean 전화번호 형식이면 true, 아니면 false 
function isValidPhone(input) {
    var format = /^(\d+)-(\d+)-(\d+)$/;
    return isValidFormat(input, format);
}

// 용 도 : 입력 값이 전화번호 형식(숫자-숫자-숫자)인지 확인하여 전화번호 형식이 아니면 "전화번호 입력이 잘못되었습니다. \n 확인후 다시 입력해 주세요."라는 메시지를 보여주고 돌려준다.
// return : boolean 전화번호 형식이면 true, 아니면 false
function isValidPhoneAlert(input) {
 var ret = isValidPhone(input);
 if(!ret) alert("전화번호 입력이 잘못되었습니다. \n 확인후 다시 입력해 주세요.");
 return ret;
}

// 용 도 : 선택된 라디오버튼이 있는지 체크
// return : boolean 있으면 true, 없으면 false
function hasCheckedRadio(input) {
 if(input.length > 1) {
  for(var inx = 0; inx < input.length; inx++)
   if(input[inx].checked) return true;
 } else {
  if(input.checked)
   return true;
 }
 return false;
}

// 용 도 : 선택된 라디오 버튼이 있는지 확인하여 없으면 "선택항목을 적어도 한개는 선택해주세요."라는 메시지를 보여주고 돌려준다.
// return : boolean 있으면 true, 없으면 false
function hasCheckedRadioAlert(input) {
 var ret=hasCheckedRadio(input);
 if(!ret) alert("선택항목을 적어도 한개는 선택해주세요.");
 return ret;
}

// 용 도 : 선택된 체크 박스가 있는지 체크
// return : boolean 있으면 true, 없으면 false
function hasCheckedBox(input) {
 return hasCheckedRadio(input);
}

// 용 도 : 선택된 체크박스가 있는지 확인하여 없으면 "선택항목을 적어도 한개는 선택해주세요."라는 메시지를 보여주고 돌려준다.
// return : boolean 있으면 true, 없으면 false
function hasCheckedBoxAlert(input) {
 var ret=hasCheckedRadio(input);
 if(!ret) alert("선택항목을 적어도 한개는 선택해주세요.");
 return ret;
}

// 용 도 : 입력 값의 바이트 길이를 리턴
// return : int, 입력값의 길이 
function getByteLength(input) {
 var byteLength = 0;
 for(var inx = 0; inx < input.value.length; inx++) {
  var oneChar = escape(input.value.charAt(inx));
  if(oneChar.length == 1) {
   byteLength ++;
  } else if(oneChar.indexOf("%u") != -1) {
   byteLength += 2;
  } else if(oneChar.indexOf("%") != -1) {
   byteLength += oneChar.length/3;
  }
 }
 return byteLength;
}

// 용 도 : 공백을 제거하는 함수
// return : string, 공백을 제거한 문자열 
function IsTrimStr(checkStr) {
 var str = "";
 for(var i = 0; i < checkStr.length; i++) {
  ch = checkStr.charAt(i);
  if(ch != " ") str += ch;
 }
 return str;
}

// 용 도 : 주민번호 체크 
// 형 식 : xxxxxx-yyyyyyy
// return :  boolean 
function newJumin(value) {
 this.value = value;
}

function common_Jumin_Check(jumin1, jumin2) {
 var ok = true;
 var Str1 = "" + jumin1 + jumin2;
 var Str = new newJumin(Str1);
 return jumin_Check(Str);
}

// 용 도 : 주민번호 체크
// 형 식 : xxxxxxyyyyyyy
// return :  boolean 
// 매개변수 : 주민등록번호 13자리
// 사 용 예 : jumin_Check(xxxxxxyyyyyyy); 
// 참고사항 : 주민등록번호가 잘못되었다면 주민등록번호가 잘못되었다는 메세지를 출력하고 boolean 을 return 한다.
function jumin_Check(juminnum) {
   if(!jumin_Check_Confirm(juminnum)) 
      alert("주민등록번호가 잘못 되었습니다.\n확인후 다시 입력해 주십시오");
}

// 용 도 : 주민번호 체크
// 형 식 : xxxxxxyyyyyyy
// return :  boolean 
// 매개변수 : 주민등록번호 13자리
// 사 용 예 : jumin_Check_Confirm(xxxxxxyyyyyyy); 
// 참고사항 : 주민등록번호가 잘못되어도 메세지를 출력하지 않고 boolean 만 return 한다.
function jumin_Check_Confirm(juminnum) {
 var ok = true;
 var Str = "" + juminnum.value;
 var sum = 0;
 sum = Str.charAt( 0 ) * 2 + Str.charAt( 1 ) * 3 + Str.charAt( 2 ) * 4 + Str.charAt( 3 ) * 5 +
    Str.charAt( 4 ) * 6 + Str.charAt( 5 ) * 7 + Str.charAt( 6 ) * 8 + Str.charAt( 7 ) * 9 +
    Str.charAt( 8 ) * 2 + Str.charAt( 9 ) * 3 + Str.charAt( 10) * 4 + Str.charAt( 11) * 5;
 if(sum == "0")
  return false;
 else {
  sum = sum % 11;
  sum = 11 - sum;
  if(sum > 9) sum = sum - 10;

  if(sum == Str.charAt(12)) {
   return true;
  } else {
   juminnum.focus();
   return false;
  }
 }
}

// 용 도 : 사업자등록번호를 확인 
// 형 식 : XXXXXXXXXX
// return : boolean 맞으면 true, 아니면 false
function RegNoCheck(membNo) {
 if(membNo.length == 10) {
  a = membNo.charAt(0);
  b = membNo.charAt(1);
  c = membNo.charAt(2);
  d = membNo.charAt(3);
  e = membNo.charAt(4);
  f = membNo.charAt(5);
  g = membNo.charAt(6);
  h = membNo.charAt(7);
  i = membNo.charAt(8);
  Os = membNo.charAt(9);

  suma = a*1 + b*3 + c*7 + d*1 + e*3 + f*7 + g*1 + h*3;
  sumb = (i*5) %10;
  sumc = parseInt((i*5) / 10,10);
  sumd = sumb + sumc; 
  sume = suma + sumd;
  sumf = a + b + c + d + e + f + g + h + i
  k = sume % 10;
  Modvalue = 10 - k;
  LastVal = Modvalue % 10;

  if(sumf == 0) return false;
 } else return false;

 if(Osub == LastVal) return true;
 else return false;
}

// 용 도 : 사업자등록번호를 확인하여 비정상적이면 "사업자 등록번호가 잘못되었습니다. \n확인후 다시 입력해 주십시오"라는 메시지를 보여주고 돌려준다.
// 형 식 : XXXXXXXXXX
// return : boolean 맞으면 true, 아니면 false
function RegNO_check(membNo) {
 var bRet = RegNoCheck(membNo);
 if(!bRet) alert("사업자 등록번호가 잘못 되었습니다.\n확인후 다시 입력해 주십시오");
 return bRet;
}

// 용 도 : 사업자등록번호를 확인하여 비정상적이면 "사업자 등록번호가 잘못되었습니다. \n확인후 다시 입력해 주십시오"라는 메시지를 보여주고 돌려준다.
// 형 식 : XXX-XX-XXXXX
// return : boolean 맞으면 true, 아니면 false
function RegNO_check_formatted(membNo) {
 var str = "";
 var ar = membNo.split( "-" );
 for(var i = 0; i < ar.length; i++) str += ar[i];
 return RegNO_check(str);
}

// 용 도 : 임의의 HTML 테그 내용을 변경
// 매개변수 : obj - 구성할 HTML Tag Object html - Tag 이름
// return : void
function makeTags(obj, html) {
 var tmp = obj.outerHTML;
 var idx = 0;
 if(IsTrimStr(obj.innerHTML).length <= 0)
  idx = tmp.indexOf( "</" + obj.tagName + ">" );
 else
  idx = tmp.indexOf(obj.innerHTML);
 tmp = tmp.substring(0, idx);
 tmp += html;
 tmp += "</" + obj.tagName + ">";
 obj.outerHTML = tmp;
}

// 용 도 : ComboCreater.getComboOption()의 결과를 기초로 
//        콤보의 항목을 변경
// 매개변수 : obj - 구성할 콤보 Object
//          option - ComboCreater.getComboOption()의 결과
// return  : void
function makeCombo( obj, option ) {
 makeTags( obj, option );
 obj.selectedIndex = 0;
}

// 용 도 : 모달 대화상자 활성화
// param : url : 호출할 URL
//         title : dialog title 명
//         x : 대화상자 x 좌표( 0보다 작으면 Center );
//         y : 대화상자 y 좌표( 0보다 작으면 Center );
//         w : 대화상자 폭
//         h : 대화상자 높이
//return : ret : URL에서 반환활 결과 Object
function showDlg(url, title, x, y, w, h) {
 var bModal = true;
 if(showDlg.arguments.length == 7) {
  bModal = showDlg.arguments[6];
 }
 if(w <= 0 || h <= 0) {
  alert("대화상자 크기를 확인하세요");
  return null;
 }

 var ar = new Array();
 ar[0] = window;
 ar[1] = url;
 ar[2] = title;
 
 var opt = "status:no;scroll:no;help:no;";
 if(x >= 0) opt += "dialogLeft:" + x + "px;";
 if(y >= 0) opt += "dialogTop:"  + y + "px;";
 
 opt += "dialogWidth:"  + w + "px;";
 opt += "dialogHeight:" + h + "px;";

 if(bModal)
  return window.showModalDialog("/common/modalDlg.htm", ar, opt);
 else
  return window.showModelessDialog("/common/modalDlg.htm", ar, opt);
}

// 용 도 : 날짜의 기본 타입에 맞는 함수
//        프로그램이 클릭되어 실행할 때 옵션을 적절히 바꿔준다.
// 매개변수 : 프로그램 form
function chkDateBasicOption(form) {
 today = new Date();
 var currentYear = today.getYear();// 현재년도
 var currentMonth = today.getMonth();// 현재월
 var currentDay = today.getDate();// 현재일

 if(form.cond.selectedIndex == 0) { // 전체
  form.fromYear.value = '/';
  form.fromMonth.value = '/';
  form.fromDay.value = '/';
  form.toYear.value = '/';
  form.toMonth.value = '/';
  form.toDay.value = '/';
 }
 if(form.cond.selectedIndex == 1) { // 당일
  form.fromYear.value = currentYear;
  form.fromMonth.value = currentMonth + 1;
  form.fromDay.value = currentDay;
  form.toYear.value = today.getYear();
  form.toMonth.value = currentMonth + 1;
  form.toDay.value = currentDay;
 }
 if(form.cond.selectedIndex == 2) { // 전일
  form.fromYear.value = currentYear;
  form.fromMonth.value = currentMonth + 1;
  form.fromDay.value = currentDay - 1;
  form.toYear.value = currentYear;
  form.toMonth.value = currentMonth + 1;
  form.toDay.value = currentDay - 1;
 }
 if(form.cond.selectedIndex == 3) { // 당월
  form.fromYear.value = currentYear;
  form.fromMonth.value = currentMonth + 1;
  form.fromDay.value = '1';
  form.toYear.value = currentYear;
  form.toMonth.value = currentMonth + 1;
  form.toDay.value = checkLeapYear(currentYear, currentMonth + 1);
 }
 if(form.cond.selectedIndex == 4) { // 전월
  form.fromYear.value = currentYear;
  form.fromMonth.value = currentMonth;
  form.fromDay.value = '1';
  form.toYear.value = currentYear;
  form.toMonth.value = currentMonth;
  form.toDay.value = checkLeapYear(currentYear, currentMonth);
  if(currentMonth == 0) {
   form.fromYear.value = currentYear - 1;
   form.fromMonth.value = 12;
   form.toYear.value = currentYear - 1;
   form.toMonth.value = 12;
   form.toDay.value = checkLeapYear(currentYear - 1, 12);
  }
 }
 if(form.cond.selectedIndex >= 5 && form.cond.selectedIndex <= 8) { // 분기
  form.fromYear.value = currentYear;
  form.fromMonth.value = (form.cond.selectedIndex - 5) * 3 + 1;
  form.fromDay.value = '1';
  form.toYear.value = currentYear;
  form.toMonth.value = (form.cond.selectedIndex - 4) * 3;
  if(form.cond.selectedIndex == 6 || form.cond.selectedIndex == 7)
   form.toDay.value = '30';
  else
   form.toDay.value = '31';
 }
 if(form.cond.selectedIndex == 9) { // 당기
  form.fromYear.value = currentYear;
  form.fromMonth.value = '1';
  form.fromDay.value = '1';
  form.toYear.value = currentYear;
  form.toMonth.value = '12';
  form.toDay.value = '31';
 }
 if(form.cond.selectedIndex == 10) { // 전기
  form.fromYear.value = currentYear - 1;
  form.fromMonth.value = '1';
  form.fromDay.value = '1';
  form.toYear.value = currentYear - 1;
  form.toMonth.value = '12';
  form.toDay.value = '31';
 }
}

// 용도 : 윤년 및 해당 월의 최종 날짜 체크
function checkLeapYear(year, month) {
 var stat = false;
 var dday = 31;

 if(year%4 == 0) {
  if(year%100 == 0) {
   if(year%400 == 0) {
    stat = true;
   }
  } else {
   stat = true;
  }
 }
 if(stat) {
  switch(month) {
   case 1: case 3: case 5: case 7: case 8: case 10: case 12: dday = 31; break;
   case 4: case 6: case 9: case 11: dday = 30; break;
   case 2: dday = 29; break;
  }
 } else {
  switch(month) {
   case 1: case 3: case 5: case 7: case 8: case 10: case 12: dday = 31; break;
   case 4: case 6: case 9: case 11: dday = 30; break;
   case 2: dday = 28; break;
  }
 }
 return dday;
}

// 용 도 : 날짜 파라미터 셋팅
// 매개변수 : form, 시작 날짜를 셋팅 할 object, 종료 날짜를 셋팅 할 object
// 작성자 : 최철웅
function setDate(frm, fobj,tobj){

 var fdate = frm.fromYear.value + frm.fromMonth.value + frm.fromDay.value;
 var tdate = frm.toYear.value +  frm.toMonth.value + frm.toDay.value;
  
 if(fdate.length > 0){
  if(frm.fromYear.value.length == 0 || frm.fromMonth.value.length == 0 || frm.fromDay.value.length == 0){
   alert("날짜 조건이 부정확합니다.");
   return false;
  }else{
   fdate = frm.fromYear.value;
   if(frm.fromMonth.value.length < 2) fdate += "0" + frm.fromMonth.value;
   else fdate += frm.fromMonth.value;
   if(frm.fromDay.value.length < 2) fdate += "0"+ frm.fromDay.value;
   else fdate += frm.fromDay.value;

   fobj.value = fdate;
  }
 }

 if(tdate.length > 0){
  if(frm.toYear.value.length == 0 || frm.toMonth.value.length == 0 || frm.toDay.value.length == 0){
   alert("날짜 조건이 부정확합니다.");
   return false;
  }else{
   tdate = frm.toYear.value
   if(frm.toMonth.value.length < 2) tdate += "0" + frm.toMonth.value;
   else tdate += frm.toMonth.value;
   if(frm.toDay.value.length < 2) tdate += "0"+ frm.toDay.value;
   else tdate += frm.toDay.value;

   tobj.value = tdate;
  }
 }
 
 return true;
}

// 용 도 : 폼 강제 reset
// 매개변수 : 프로그램 form
// 작성자 : 최철웅
function formReset(frm){

 for(i = 0 ; i < frm.length ; i++){
  var obj = frm.elements[i];
  if( obj.type.toLowerCase() == "submit" || 
    obj.type.toLowerCase() == "reset" ||
    obj.type.toLowerCase() == "button" ||
    obj.type.toLowerCase() == "image" ||
    obj.type.toLowerCase() == "checkbox" ){
  }else{
   obj.value = '/';
  }
 }
}

// setFormObj 함수에서 정의된 값들을 체크한다.
// Object name이 select이면 "값을 선택하세요."를 보여주고 false를 리턴.
// Object name이 text이면 "값을 입력하세요."를 보여주고 false를 리턴.
function checkBeforeSubmit(form, FormObj) {
 for(var i = 0; i < FormObj.length; i++) {
  for(var j = 0; j < form.length; j++) {
   if(FormObj[i] == form.elements[j].name) {
    if(IsTrimStr(form.elements[j].value) == "") {
     var msg = "";
     if(form.elements[j].type == "select-one")
      msg = "값을 선택하세요.";
     else if(form.elements[j].type == "text" || form.elements[j].type == "textarea")
      msg = "값을 입력하세요.";

     alert(msg); form.elements[j].focus(); return false; break;
    } else {
     if(i == (FormObj.length-1))
      return true;
     else
      continue;
    }
   }
  }
 }
}

// 일정 길이를 입력받은 후에 포커스이동
function FocusAutoMove(leng, oldObj, nextObj) {
 var objLeng = oldObj.value.length;
 if(objLeng == leng) nextObj.focus();
}


// 아이디 중복체크...
function DuplicateUserid(form, url, wsize, hsize) {
 if(!ChkForm(form.userid, "userid", "아이디는", 4, 13)) return;
 CommonPopup('/'+url+'?userid='+form.userid.value, 'IDcheck', 'width='+wsize+',height='+hsize+',scrollbars=no');
}


// 월/일의 경우 10일미만 일 때 "0"를 붙여서 리턴한다.
function CheckDateLength(val) {
 if(val.length <= 1) return "0"+val;
 else return val
}


/**
 설명: 주민등록번호에서 생년월일 추출 하여 생년월일 자동 입력
 작성자: FID 개발5팀 glassel@fid.co.kr
 작성일: 2003-07-24 오후 12:56
 @param thisForm : 해당 폼의 오프젝트
**/
function inBirthDay(thisForm){
 with(thisForm){
  var birthDay = ssn1.value;
  var millen = ssn2.value;

  var year = parseInt(birthDay.substring(0,2));
  var month = birthDay.substring(2,4);
  var day = birthDay.substring(4,6);
  var divid = parseInt(millen.substring(0,1));

  if(divid < 3) year += 1900;
  else    year += 2000;

  byear.value = year;
  bmonth.value = month;
  bday.value = day;
 }
}

/**
 설명: 쿠키 값을 가져온다.
 작성자: FID 개발5팀 glassel@fid.co.kr
 작성일: 2003-07-24 오후 12:56
 @param NameCookie : 키 값
**/
function GetCookie(NameCookie) {
 var i = document.cookie.indexOf(NameCookie + "=" );
 if(i != -1){
  i += NameCookie.length + 1;
  NameEnd = document.cookie.indexOf(";", i);
  if(NameEnd==-1)
   NameEnd = document.cookie.length;
  return unescape(document.cookie.substring(i, NameEnd));
 } else
  return "";
}

/**************************************** 팝업 관련 시작 ****************************************/

function openPopup(url) {
 window.open(url);
}

// 컨택어스
function Contactus() {
 CommonPopup("/customer/contactus/contactus.html", "contactus", "width=0,height=0");
}

// 개인정보보호정책
function Privacy() {
 CommonPopup("/member/joinus/privacy.html", "privacy", "width=616,height=600,scrollbars=yes");
}

// 개인정보보호정책
function Commonpopup(url,name,width,height,scrollbars) {
 CommonPopup(url, name, "width="+width+",height="+height+",scrollbars="+scrollbars);
}

function CommonPopup(url,name,width,height,scrollbars) {
 CommonPopup(url, name, "width="+width+",height="+height+",scrollbars="+scrollbars);
}

function CommonPopup(url) {
 Common.Popup(url, "", "");
}

function CommonPopup(url, winname) {
 Common.Popup(url, winname, "");
}

function CommonPopup(url, winname, feature) {
 var common_popup = window.open(url, winname, feature);
 common_popup.focus();
}

function CommonPopupBack(url, winname, feature) {
 window.history.back();
 var common_popup = window.open(url, winname, feature);
 common_popup.focus();
}

//2003-08-17 추가(황성열 : syhwang@fid.co.kr)

function addWishList(pid){
 if(pid.length > 0)
  location.href = "proc_wishlist.jsp?pid="+pid+"&type=Ins" ;
 else
  alert('상품정보가 없습니다.');
}//end function 

//2003-08-18 추가 (황성열 : syhwang@fid.co.kr)
function procProdSearch(form){

 if(form.keyword.value.length == 0){
  alert('검색할 상품명을 입력하십시오.');
 }else{
  form.submit();
 }//end if

}//end function 

//2003-09-01 추가 (김종순 : aign@fid.co.kr)
function go(url) {
 opener.location = url;
 self.close();
}

/**************************************** 팝업 관련 종료 ****************************************/

/*
 * 이튠 플래쉬 메뉴에 사용되는 메서드 (수정중)
 * 작성일자 2003-08-08 오후 2:37 
 */

function pageLink(url) {
 window.location.href = url;
}

//story
function story() { pageLink('/story/brand/brand_story.jsp'); }
function brand() { pageLink('/story/brand/brand_story.jsp'); }
function product() { pageLink('/story/product/cleansing.jsp'); }
function cleansing() { pageLink('/story/product/cleansing.jsp'); }
function mask() { pageLink('/story/product/mask.jsp'); }
function skin() { pageLink('/story/product/skin.jsp'); }
function moisturizing() { pageLink('/story/product/moisturizing.jsp'); }
function cream() { pageLink('/story/product/intensive_cream.jsp'); }
function spCare() { pageLink('/story/product/special_care.jsp'); }

//beauty
function beauty() { pageLink('/beauty/skintest/skintest.jsp'); }
function skinTest() { pageLink('/beauty/skintest/skintest.jsp'); }
function clinic() { pageLink('/beauty/clinic/product/list.jsp'); }
function counselProd() { pageLink('/beauty/clinic/product/list.jsp'); }
function counselCare() { pageLink('/beauty/clinic/skincare/list.jsp'); }
function skinTips() { pageLink('/beauty/tips/tips_03.jsp'); }
function skinTalk() { pageLink('/beauty/talk/list.jsp'); }

//people
function people() { pageLink('/people/forum/list.jsp'); }
function forum() { pageLink('/people/forum/list.jsp'); }

//mania
function mania() { pageLink('/mania/'); }
function maniaSub() { pageLink('/mania/'); }
function maniaBoard() { pageLink('/mania/board/list.jsp'); }
function maniaReview() { pageLink('/mania/review/main.jsp'); }

//MyEtune
function myEtune() { pageLink('/myetune/main/main.jsp'); }
function calendar() { pageLink('/myetune/calendar/calendar.jsp'); }
function skinType() { pageLink('/myetune/skintype/skintype.jsp'); }
function myPoint() { pageLink('/myetune/point/point.jsp'); }
function service() { pageLink('/'); }
function pds() { pageLink('/myetune/wallpaper/wallpaper.jsp'); }

//shopping
function shopMain() { pageLink('/shopping/'); }
function shopping() { pageLink('/'); }
function shopClean() { pageLink('/shopping/display/cleansing_care.jsp?cid1=A'); }
function shopBasic() { pageLink('/shopping/display/basic_care.jsp?cid1=B'); }
function shopSpecial() { pageLink('/shopping/display/special_care.jsp?cid1=C'); }
function shopGift() { pageLink('/shopping/display/planning_set.jsp?cid1=F'); }
function prodThisMonth() { pageLink('/shopping/month/monthly_product.jsp'); }
function orderUse() { pageLink('/shopping/usingorder/using_order.jsp'); }
function afterUse() { pageLink('/shopping/afteruse/list.jsp'); }
function cart() { pageLink('/shopping/cart/viewcart.jsp'); }
function guide() { pageLink('/shopping/guide/using_guide.jsp'); }
function inquire() { pageLink('/shopping/delivery/search_list.jsp'); }
function wishList() { pageLink('/shopping/wishlist/wishlist.jsp'); }


//etc
function goHome() { pageLink('/'); }
function goMembership() { pageLink('/member/joinus/modify.jsp'); }
function goEvent() { pageLink('/event/list.jsp'); }
function goFaq() { pageLink('/help/faq/list.jsp'); }
function goQna() { pageLink('/help/qna/qna_write.jsp'); }
function goSiteMap() { pageLink('/help/sitemap/sitemap.jsp'); }
function goEvent() { pageLink('/event/list.jsp'); }
function goSample() { pageLink('/help/sample/sampleOrder.jsp'); }


function regMem() { pageLink('/member/joinus/certify.jsp'); }
function editMem() { pageLink('/member/joinus/modify.jsp'); }
function delMem() { pageLink('/member/joinus/memDel.jsp'); }

function faqProduct() { pageLink('/help/faq/list.jsp?subcode=033'); }
function faqMember() { pageLink('/help/faq/list.jsp?subcode=034'); }
function faqOrder() { pageLink('/help/faq/list.jsp?subcode=035'); }
function faqAccount() { pageLink('/help/faq/list.jsp?subcode=035'); }
function faqTrans() { pageLink('/help/faq/list.jsp?subcode=036'); }
function faqRefund() { pageLink('/help/faq/list.jsp?subcode=037'); }
function faqPoint() { pageLink('/help/faq/list.jsp?subcode=038'); }
function faqSample() { pageLink('/help/faq/list.jsp?subcode=039'); }

 

function moveOne(page, oseq){
 document.form1.oseq.value = oseq;
 document.form1.action = page;
 document.form1.submit();
}


// ----------------------------------------------------------------------------
// 기본
// ----------------------------------------------------------------------------

function allBlur(){
 for(i=0;i<document.links.length;i++)
 document.links[i].onfocus=document.links[i].blur;
 //set_url(a);
}


// popup Windows
function openWin(url,winName,intWidth,intHeight) {
        var winPosLeft = (screen.width - intWidth) / 2;
        var winPosTop = (screen.height - intHeight) / 2;
        var winOpt = "width="+intWidth+",height="+intHeight+",top="+winPosTop+",left="+winPosLeft+'location=no,directories=no,status=no,menubar=no,scrollbars=no,resizable=no';
        var win = window.open(url, winName, winOpt);
  if( win.focus )
   win.focus();
}
function openWin2(url,winName,intWidth,intHeight) {
        var winPosLeft = (screen.width - intWidth) / 2;
        var winPosTop = (screen.height - intHeight) / 2;
        var winOpt = "width="+intWidth+",height="+intHeight+",top="+winPosTop+",left="+winPosLeft+'location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no';
        window.open(url, winName, winOpt);
}

function goto(form) {
var myindex=form.go.selectedIndex
window.location=(form.go.options[myindex].value);
}

function goto_new(form) {
 var windowprops = ""; // 팝업창의 옵션
 var URL = form.go.options[form.go.selectedIndex].value;
 if (URL != "" && URL != null){
  popup = window.open(URL,'',windowprops);
 }
}



 댓글 (0)


폼체크-예제
페이지: 1 / 1   


   특수문자 입력금지, 숫자만 입력 가능 등등 유용한 2741
   콤보박스/리스트박스를 이용한 사이트이동(푸른산)2797
   텍스트 입력 테그에 이미지로 설명문 넣기2136
   자바스크립트 셀렉트박스에 옵션추가 selectbox3068
   텍스트폼에 숫자만 입력되게 하기 (이벤트) IE F2349
   입력버턴의 값이 1인 것의 갰수 구하기1964
   Radio button value 값을 보려면?2398
   라디오버튼 체크여부(유무) 확인기능(1) 2404
   아이디 체크2063
   한글만 입력가능하게(홈마스타)2170
     [RE] 한글과 숫자만 입력가능하게(홈마스타)2342
   한글 중에 미완성된 글자가 있는지 확인하려면(홈마스타)2623
   금지 메일 도메인 검사(홈마스타)2209
   회원가입시 메일정보 체크하크하기(홈마스타)2039
   객체 존재여부 확인(홈마스타)2260
   필드입력체크하기(홈마스타)2191
   영문 대문자 입력(홈마스타)2437
   check박스 배열 넘기기(홈마스타)5623
   파일 업로드 전... 파일크기 확인(홈마스타)2667
   이메일, 회원아이디, 주민등록번호 체크(홈마스타)2244
   회원가입시 사용하는 폼체크 예제(홈마스타)2168
자바스크립트 공통함수(상큼한여)4901
≪ [1]   ≫

복수단어 검색은 공백(space)로 구분해 주세요.



 
최근 글
[손님]
117
98
251
471
1034
403
464
259
384
3843
931
1004
1248
991
4296
 
인기 글
[손님]
3948
19389
[나는5] 자동링크 테스트
3233
3442
3453
9892
5011
5880
10132
3367
10015
[랜드모아] 영문과 숫자만 사용
3106
7251
5124
5501