강의 컨설팅 트레이닝 무료진단 무료책자 마케팅편지 마케팅정보공유 다이어리 서비스제휴 고객센터

문자열 체크
작성자 : 99 단국강토
등록날짜 : 2009.02.19 10:42
1,782
/**
* 입력값이 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);
}

[출처]  항해자

"쇼핑몰·홈페이지·오픈마켓
블로그·페이스북·이메일 등의 각종 마케팅 글쓰기,
각종 광고, 영업, 판매, 제안서, 전단지
반응율 3배×10배 이상 높이는 마법의 8단계 공식"
자세히보기

Comments

번호 제목 글쓴이 날짜 조회
3195 투명 테이블 99 단국강토 02.19 2073
3194 이미지 사용하지 않고, HTML문서에 그라데이션 표현하기 99 단국강토 02.19 2116
3193 HTML 문서에서 데스크탑용 커서 사용하기 99 단국강토 02.19 2673
3192 테이블로 입체버튼 만들기 99 단국강토 02.19 2361
3191 html 문서에 테두리 넣기 99 단국강토 02.19 2512
3190 List 아이템을 그림으로 바꾸기 99 단국강토 02.19 2066
3189 프린트 할때 폰트 다르게 표현하기 99 단국강토 02.19 2393
3188 media-print CSS 를 아시나요? 99 단국강토 02.19 2138
3187 스타일시트 99 단국강토 02.19 2442
3186 한줄 Tip 99 단국강토 02.19 2705
3185 [css] 텍스트 / 폼 / 테이블 / 버튼 / 체크박스 99 단국강토 02.19 2604
3184 link색 바꾸기 99 단국강토 02.19 3137
3183 버튼 미디어 플래이어를 구현해 보자 99 단국강토 02.19 3027
3182 CSS 사용방법 - 폰트표현 99 단국강토 02.19 4766
3181 CSS 사용 표현 - 위치표현 99 단국강토 02.19 2689
3180 레이어(Layer) 팝업 만들기 99 단국강토 02.19 3176
열람중 문자열 체크 99 단국강토 02.19 1783
3178 onUnLoad 이벤트 제어하기 99 단국강토 02.19 2711
3177 onUnLoad 이벤트 제어하기 99 단국강토 02.19 2894
3176 Input Box의 readOnly 속성 제어하기 99 단국강토 02.19 2988
3175 Input Box의 readOnly 속성 제어하기 99 단국강토 02.19 2653
3174 iframe 속성 설명 99 단국강토 02.19 2351
3173 iframe 속성 설명 99 단국강토 02.19 2411
3172 Textare 에 이미지 넣기 99 단국강토 02.19 1641
3171 Textare 에 이미지 넣기 99 단국강토 02.19 2079
3170 form enctype (encoding) 조절하기 99 단국강토 02.19 2378
3169 form enctype (encoding) 조절하기 99 단국강토 02.19 2862
3168 new Image() 사용하기 99 단국강토 02.19 1660
3167 new Image() 사용하기 99 단국강토 02.19 2052
3166 특수문자 입력 방지하기 99 단국강토 02.19 3341
마케팅
특별 마케팅자료
다운로드 마케팅자료
창업,경영
기획,카피,상품전략
동기부여,성취