JavaScript
글자수 제한 처리(바이트)
보니스
2017. 7. 27. 12:48
반응형
1. 자바스크립트 단
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | function fnChkByte(obj) { var maxByte = 600; //최대 입력 바이트 수 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 + "자를 초과 입력할 수 없습니다." ); str2 = str.substr(0, rlen); //문자열 자르기 obj.value = str2; fnChkByte(obj, maxByte); } else { document.getElementById( 'byteInfo' ).innerText = rbyte; } } |
2. HTML 단
1 | < textarea name = "introduce" id = "introduce" style = "width:450px; height:80px" onkeyup = "fnChkByte(this);" > |