한글 포함한 문자열에서 문자열의 길이를 반환

· 13년 전 · 1384
<input type='text' name='str' maxlength='30'>
위와 같이 입력을 받는 경우에 한글을 포함한 경우에
미처 생각지도 못한 경우가 발생하더군요.

입력값이 "한 글" ==> 인경우 저는 문자열의 길이가 5일거라고 생각을 하고 확인도 하지 않고
maxlength 속성을 사용했었는데...
window.alert(form.str.value.length)이렇게 해서 확인해 보면 문자열의 길이가 3이더군요.

위와 같은 경우 디비에 입력할때 컬럼의 속성이 varchar(3)이라고 하면 maxlength속성만
믿고 그대로 사용한다면 재앙(?)이 발생합니다... -,.-;;

그래서 한글을 포함한 문자열의 길이를 확인하는 자바스크립트 함수를 만들었습니다.



// 한글을 포함한 문자열에서 문자열의 길이를 반환한다.
function strlen(str)
{
var len = str.length;
var han = 0;
var res = 0;

for(i=0;i<len;i++) {
var a=str.charCodeAt(i);
if(a>128)
han++;
}
res = (len-han) + (han*2);

return res;
}
|
댓글을 작성하시려면 로그인이 필요합니다. 로그인

프로그램

+
제목 글쓴이 날짜 조회
13년 전 조회 973
13년 전 조회 1,782
13년 전 조회 1,591
13년 전 조회 1,318
13년 전 조회 1,521
13년 전 조회 3,675
13년 전 조회 787
13년 전 조회 1,671
13년 전 조회 1,490
13년 전 조회 641
13년 전 조회 765
13년 전 조회 647
13년 전 조회 8,374
13년 전 조회 859
13년 전 조회 1,662
13년 전 조회 1,330
13년 전 조회 765
13년 전 조회 508
13년 전 조회 3,743
13년 전 조회 559
13년 전 조회 707
13년 전 조회 1,765
13년 전 조회 1,267
13년 전 조회 1,311
13년 전 조회 1,015
13년 전 조회 962
13년 전 조회 718
13년 전 조회 1,266
13년 전 조회 867
13년 전 조회 1,700
13년 전 조회 1,039
13년 전 조회 2,709
13년 전 조회 580
13년 전 조회 2,250
13년 전 조회 2,630
13년 전 조회 4,391
13년 전 조회 964
13년 전 조회 1,188
13년 전 조회 1,364
13년 전 조회 1,185
13년 전 조회 1,185
13년 전 조회 2,846
13년 전 조회 1,268
13년 전 조회 1,027
13년 전 조회 1,156
13년 전 조회 1,148
13년 전 조회 829
13년 전 조회 1,719
13년 전 조회 2,096
13년 전 조회 1,385
13년 전 조회 980
13년 전 조회 958
13년 전 조회 855
13년 전 조회 1,581
13년 전 조회 2,609
13년 전 조회 1,320
13년 전 조회 1,607
13년 전 조회 1,130
13년 전 조회 1,149
13년 전 조회 1,356
13년 전 조회 880
13년 전 조회 861
13년 전 조회 872
13년 전 조회 1,202
13년 전 조회 1,280
13년 전 조회 1,031
13년 전 조회 802
13년 전 조회 1,075
13년 전 조회 1,025
13년 전 조회 949
13년 전 조회 1,055
13년 전 조회 947
13년 전 조회 1,264
13년 전 조회 1,033
13년 전 조회 1,153
13년 전 조회 1,668
13년 전 조회 603
13년 전 조회 2,938
13년 전 조회 640
13년 전 조회 829
13년 전 조회 629
13년 전 조회 1,006
13년 전 조회 948
13년 전 조회 1,211
13년 전 조회 733
13년 전 조회 1,802
13년 전 조회 1,440
13년 전 조회 1,032
13년 전 조회 6,706
13년 전 조회 625
13년 전 조회 998
13년 전 조회 841
13년 전 조회 981
13년 전 조회 1,264
13년 전 조회 857
13년 전 조회 1,116
13년 전 조회 706
13년 전 조회 726
13년 전 조회 1,252
13년 전 조회 3,111
🐛 버그신고