컴

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

· 2012-02-27 (월) 20:46:48 · 4000
<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;
}
|
댓글을 작성하시려면 로그인이 필요합니다.

프로그램

8,188건
+
제목 글쓴이 날짜 조회
16-03-02 조회 3,239
16-01-19 조회 2,526
15-12-23 조회 2,959
15-12-08 조회 3,674
14-10-30 조회 5,732
14-06-06 조회 5,555
12-08-30 조회 3,909
12-08-20 조회 3,828
12-07-15 조회 5,158
12-07-13 조회 3,629
12-07-06 조회 3,857
12-06-27 조회 3,366
12-06-23 조회 3,569
12-05-03 조회 5,181
12-04-20 조회 4,124
12-03-29 조회 4,632
12-03-22 조회 4,725
12-03-22 조회 3,509
12-03-21 조회 3,282
12-03-11 조회 3,714
12-03-06 조회 4,263
12-02-22 조회 4,532
12-02-17 조회 3,328
12-02-17 조회 6,179
12-02-14 조회 6,135
12-02-06 조회 4,260
12-01-18 조회 3,214
12-01-06 조회 3,442
11-12-30 조회 3,912
11-12-30 조회 7,057
11-12-21 조회 3,280
11-12-21 조회 4,243
11-12-16 조회 3,271
11-12-15 조회 3,322
11-12-15 조회 3,422
11-12-15 조회 4,223
11-12-09 조회 3,226
11-12-09 조회 3,308
11-12-07 조회 2,874
11-12-07 조회 3,960
11-12-05 조회 4,417
11-12-02 조회 3,861
11-12-01 조회 2,729
11-12-01 조회 2,775
11-12-01 조회 2,762