jineecode

byte 제한 검증 본문

JS

byte 제한 검증

지니코딩 2021. 7. 8. 09:58
// byte 제한 검증
// ex: onKeyUp="javascript:fnChkByte(this,'1000')"
function fnChkByte(obj, maxByte) {
    var str = obj.value;
    var str_len = str.length;

    var rbyte = 0;
    var rlen = 0;
    var one_char = "";
    var str2 = "";

    for (var i = 0; i < str_len; i++) {
        one_char = str.charAt(i);
        if (escape(one_char).length > 4) {
            rbyte += 2; //한글2Byte
        } else {
            rbyte++; //영문 등 나머지 1Byte
        }
        if (rbyte <= maxByte) {
            rlen = i + 1; //return할 문자열 갯수
        }
    }
    if (rbyte > maxByte) {
        // alert("한글 "+(maxByte/2)+"자 / 영문 "+maxByte+"자를 초과 입력할 수 없습니다.");
        // alert("메세지는 최대 " + maxByte + "byte를 초과할 수 없습니다.");
        str2 = str.substr(0, rlen); //문자열 자르기
        obj.value = str2;
        fnChkByte(obj, maxByte);
    } else {
        return false;
    }
}

'JS' 카테고리의 다른 글

textarea backspace 방지 코드  (0) 2021.07.12
달력  (0) 2021.07.09
javascript 뒤로가기 방지 코드  (0) 2021.07.08
onclick 링크 (새창/팝업/현재창/프레임)  (0) 2021.06.30
chart.js  (0) 2021.06.23
Comments