반응형
입력한 문자열에 대해서 Byte를 계산하고 화면에 노출시키는 소스 코드입니다. 문자메시지를 보낼 때 유용하게 사용하실 수 있습니다. textarea에 onkeyup 함수를 통해서 실시간으로 text에 대해서 Byte를 확인 가능 합니다. charCodeAt() 메서드를 통해서 입력값에 대한 문자의 유니코드 코드 포인트를 반환합니다. 한글에 대해서는 totalByte를 +2 시켜 주면서 계산하고 있습니다. 추가로 전송 버튼을 클릭했을 때는 2000 Byte가 넘었는지 체크하고 있습니다.
간단한 함수 확인하시고 응용 가능 하십니다.
<script src="https://code.jquery.com/jquery-3.5.1.min.js"></script>
<script>
var limitByte = 2000;
var totalByte = 0;
function fn_chk_byte(obj){
totalByte = 0;
var message = $(obj).val();
for(var i =0; i < message.length; i++) {
var currentByte = message.charCodeAt(i);
if(currentByte > 128){
totalByte += 2;
}else {
totalByte++;
}
}
$("#messagebyte").text(totalByte);
}
function sms_send(){
if(totalByte > 2000){
alert(limitByte+"Byte 까지 전송가능합니다.");
return;
}
}
</script>
<textarea id="msg_cont" name="msg_cont" style="height:250px;" onkeyup="fn_chk_byte(this);"></textarea>
<div style="margin-top:20px;">
<span id="messagebyte">0</span><span>/ 2000 Byte</span>
<button type="button" onclick="javascript:sms_send();">
<strong>전송</strong>
</button>
</div>
반응형
'개발이야기 > 자바스크립트' 카테고리의 다른 글
[자바스크립트] PHP 배열 변수 스크립트에서 사용하기 (0) | 2023.03.30 |
---|---|
[자바스크립트] 유튜브 영상 넣기 (iframe, YouTube Player API) (0) | 2023.03.29 |
[자바스크립트] textarea 높이 자동조절 (onkeyup, onkeydown) (0) | 2023.03.08 |
[자바스크립트] 문자열 자릿수만큼 0, 공백 채우기 (fillZero, fillSpace) (0) | 2023.01.09 |
[자바스크립트] selectbox(셀렉트박스) 년도, 월 만들기 (년도 역순) (4) | 2022.11.17 |
댓글