34글자 제한 입니다. 천천히 보시면 금방 아실 수 있습니다.
function byteCheck(msg){
var text = msg;
var msglen=0;
msglen = reCount(text);
if(msglen > 34){
rem = msglen - 34;
alert('입력하신 문장의 총길이는 ' + msglen + '입니다.\n초과되는 ' + rem + '바이트는 삭제됩니다.');
msg = cutMsg(text);
}else{
}
return msg;
}
function cutMsg(str){
var ret='';
var i;
var msglen=0;
for(i=0;i<str.length;i++){
var ch=str.charAt(i);
if(escape(ch).length >4){
msglen += 2;
}else{
msglen++;
}
if(msglen > 34) break;
ret += ch;
}
return ret;
}
function reCount(str){
var i;
var msglen=0;
for(i=0;i<str.length;i++){
var ch=str.charAt(i);
if(escape(ch).length >4){
msglen += 2;
}else{
msglen++;
}
}
return msglen;
}
function limitPushString(){
var f = document.form;
var PUSH_STRING = f.PUSH_STRING.value;
f.PUSH_STRING.value=byteCheck(PUSH_STRING,34);
}
//html 코드
<input type="text" name="PUSH_STRING" size="70" maxlength="34" disabled onKeyUp="limitPushString();" onkeydown="limitPushString();">
'JAVASCRIPT > 자바 스크립트 Byte 체크' 카테고리의 다른 글
자바스크립트 한글 byte 계산 함수 (0) | 2011.01.11 |
---|---|
자바 스크립트 Byte 체크 (0) | 2009.10.12 |
댓글