보안접속
회원등록 비번분실
컴퓨팅
Support Wikipedia

 Javascript Tip
자바스트립팁
 
작성자 서비
작성일 2008-11-28 13:54
ㆍ추천: 0  ㆍ조회: 1282      
스크립 긁어 모아둔것
**
* 입력값이 NULL인지 체크
*/
function isNull(input) {
   if (input.value == null || input.value == "") {
       return true;
   }
   return false;
}

/**
* 입력값에 스페이스 이외의 의미있는 값이 있는지 체크
* ex) if (isEmpty(form.keyword)) {
*         alert("검색조건을 입력하세요.");
*     }
*/
function isEmpty(input) {
   if (input.value == null || input.value.replace(/ /gi,"") == "") {
       return true;
   }
   return false;
}

/**
* 입력값에 특정 문자(chars)가 있는지 체크
* 특정 문자를 허용하지 않으려 할 때 사용
* ex) 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)만으로 되어있는지 체크
* 특정 문자만 허용하려 할 때 사용
* ex) 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 변수로 선언하고 사용하도록 한다.
* 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);
}

/**
* 입력값이 알파벳 대문자인지 체크
*/
function isUpperCase(input) {
   var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
   return containsCharsOnly(input,chars);
}

/**
* 입력값이 알파벳 소문자인지 체크
*/
function isLowerCase(input) {
   var chars = "abcdefghijklmnopqrstuvwxyz";
   return containsCharsOnly(input,chars);
}

/**
* 입력값에 숫자만 있는지 체크
*/
function isNumber(input) {
   var chars = "0123456789";
   return containsCharsOnly(input,chars);
}

/**
* 입력값이 알파벳,숫자로 되어있는지 체크
*/
function isAlphaNum(input) {
   var chars = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
   return containsCharsOnly(input,chars);
}

/**
* 입력값이 숫자,대시(-)로 되어있는지 체크
*/
function isNumDash(input) {
   var chars = "-0123456789";
   return containsCharsOnly(input,chars);
}

/**
* 입력값이 숫자,콤마(,)로 되어있는지 체크
*/
function isNumComma(input) {
   var chars = ",0123456789";
   return containsCharsOnly(input,chars);
}

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

/**
* 입력값이 이메일 형식인지 체크
* ex) if (!isValidEmail(form.email)) {
*         alert("올바른 이메일 주소가 아닙니다.");
*     }
*/
function isValidEmail(input) {
//    var format = /^(\S+)@(\S+)\.([A-Za-z]+)$/;
   var format = /^((\w|[\-\.])+)@((\w|[\-\.])+)\.([A-Za-z]+)$/;
   return isValidFormat(input,format);
}

/**
* 입력값이 전화번호 형식(숫자-숫자-숫자)인지 체크
*/
function isValidPhone(input) {
   var format = /^(\d+)-(\d+)-(\d+)$/;
   return isValidFormat(input,format);
}

/**
* 입력값의 바이트 길이를 리턴
* ex) if (getByteLength(form.title) > 100) {
*         alert("제목은 한글 50자(영문 100자) 이상 입력할 수 없습니다.");
*     }
* Author : Wonyoung Lee
*/
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;
}

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

/**
* 선택된 라디오버튼이 있는지 체크
*/
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;
}

/**
* 선택된 체크박스가 있는지 체크
*/
function hasCheckedBox(input) {
   return hasCheckedRadio(input);
}
 
번호     글 제 목  작성자 조회 작성일
17 javascript 오른쪽 마우스 버튼 금지 서비 758 리눅스 2012-04-24
16 Email Check Javascript 서비 2015 2009-08-26
15 스크립 긁어 모아둔것 서비 1282 2008-11-28
14 cache 파일 만들지 않기 header 관리자 4144 2008-05-21
13 [javascript]get방식으로 한글 보낼때 깨지는 문제 관리자 1754 2008-05-21
12 [javascript]number_format 관리자 1723 2008-05-21
11 [javascript]주민번호 유효성 관리자 1431 2008-05-21
10 Image 객체 관리자 1945 리눅스 2003-11-01
9 Window 객체 관리자 4351 리눅스 2003-11-01
8 마우스 포인터 모양 바꾸기 관리자 1818 리눅스 2003-10-23
12

서울시 강동구 - www.subi.biz