입력된 글자가 몇 Byte 인지 체크하는 소스 입니다.
모두 3가지 방법이 있는데 원하는 방법으로 이용 해 보세요
첫번째 방법
<script language="javascript">
// 글자수 Byte 체크
// value = 문자열
// id = 바이트 숫자 표시 id 명
function TextByteChk(str,id)
{
var len = 0;
for (var inx = 0; inx < str.length; inx++) {
var oneChar = escape(str.charAt(inx));
if ( oneChar.length == 1 ) {
len ++;
} else if (oneChar.indexOf("%u") != -1) {
len += 2;
} else if (oneChar.indexOf("%") != -1) {
len += oneChar.length/3;
}
}
document.getElementById(id).value = len;
}
</script>
<textarea onblur="TextByteChk(this.value,'bytewrite');" onKeyUP="TextByteChk(this.value,'bytewrite');"></textarea>
<input type="text" id="bytewrite" value="" readonly>
두번째 방법
<script language='javascript'>
String.prototype.bytes = function() {
var str = this;
var l = 0;
for (var i=0; i<str.length; i++) l += (str.charCodeAt(i) > 128) ? 2 : 1;
return l;
}
function cal_pre()
{
var size_check = document.form.comment.value;
document.form.size.value = size_check.bytes();
}
function check()
{
var size_check = document.form.comment.value;
if (size_check.bytes() > 200)
{
alert("작성하신 글은 "+size_check.bytes()+" Byte 이며 200 Byte 이하로 해주세요");
}
else
{
alert("작성하신 글은 "+size_check.bytes()+" Byte 입니다.");
}
}
</script>
<form name='form'>
<input type='text' name='comment' value='' onKeyUP="javascript:cal_pre();">
<input type='text' name='size' size='3' value='' readonly>
<input type='button' value='확인' onclick='check()'>
</form>
'PHP∵SCRIPT' 카테고리의 다른 글
자바스크립트 정규표현식 (0) | 2013.12.30 |
---|---|
strict 유효성 검사에서 form name='name1' name속성 걸리는 문제 (0) | 2013.12.30 |
자바스크립트 문자체크 (0) | 2013.12.30 |
자바스크립트를 이용하여 <BR> 자동 입력하기 (0) | 2013.12.30 |
자신의 웹브라우져, 운영체제 확인 (0) | 2013.12.30 |
엔터, 공백 제거 (0) | 2013.12.30 |
모니터 중앙에 새창 띄우기, 새창을 모니터 중앙으로 이동하기 (0) | 2013.12.30 |
[JavaScript] 자바스크립트 :: 문자열 글자수 자르기 (문자메세지등등에서 사용) (0) | 2013.12.30 |
댓글