728x90
반응형
1. JS단
//maxByte = jsp단에 있는 최대 byte수. ex) 50이면 50byte가 maxByte
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 += 3; //한글3Byte
}else{
rbyte++; //영문 등 나머지 1Byte
}
if(rbyte <= maxByte){
rlen = i + 1; //return할 문자열 갯수
}
}
if(rbyte > maxByte)
{
// alert("한글 "+(maxByte/3)+"자 / 영문 "+maxByte+"자를 초과 입력할 수 없습니다.");
alert("이름은 최대 " + maxByte + "byte를 초과할 수 없습니다.")
str2 = str.substr(0,rlen); //문자열 자르기
obj.value = str2;
fnChkByte(obj, maxByte);
}
else
{
document.getElementById('clientName').innerText = rbyte; // jsp단 id 값들
document.getElementById('department').innerText = rbyte;
document.getElementById('job').innerText = rbyte;
document.getElementById('email').innerText = rbyte;
document.getElementById('phone').innerText = rbyte;
document.getElementById('tel').innerText = rbyte;
}
}
2. JSP 단
<input type="text" id="tel" name="tel" oninput="autoHyphen(this,13)" onKeyUp="javascript:fnChkByte(this,50)" class="editModeInput2" readonly />
onKeyUp 함수에서 javascript를 따로 선언해줘야 한다.
728x90
반응형
'TIP)' 카테고리의 다른 글
[JSP,JS] 테이블 클릭시 테이블 데이터값 가져오는법 (0) | 2022.06.09 |
---|---|
[JS] 날짜 계산하는 방법 (월, 일 구하기) (0) | 2022.06.09 |
[JS] for 문으로 피라미드, 삼각형, 다이아몬드 찍기 (0) | 2022.05.17 |
[한컴 오피스] 한컴 설치법 (0) | 2022.05.07 |
[다운로드] Apache Tomcat 다운로드 방법 (0) | 2020.06.02 |
댓글