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

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

퍼블리셔팁

1,282건

퍼블리싱과 관련된 유용한 정보를 공유하세요. 질문은 상단의 QA에서 해주시기 바랍니다.

+
분류 제목 글쓴이 날짜 조회
HTML 12-04-02 조회 3,982
HTML 12-03-30 조회 3,722
HTML 12-03-29 조회 9,515
HTML 12-03-28 조회 3,082
HTML 12-03-28 조회 5,123
HTML 12-03-27 조회 4,716
HTML 12-03-23 조회 3,410
HTML 12-03-21 조회 3,013
HTML 12-03-20 조회 3,194
HTML 12-03-18 조회 2,685
HTML 12-03-15 조회 2,265
HTML 12-03-12 조회 2,813
HTML 12-03-12 조회 2,568
HTML 12-03-08 조회 3,254
HTML 12-03-03 조회 3,144
HTML 12-03-03 조회 2,526
HTML 12-02-29 조회 3,295
HTML 12-02-28 조회 3,244
HTML 12-02-28 조회 2,635
HTML 12-02-28 조회 2,867
HTML 12-02-27 조회 3,418
HTML 12-02-27 조회 2,583
HTML 12-02-24 조회 3,004
HTML 12-02-24 조회 2,640
HTML 12-02-23 조회 3,057
HTML 12-02-20 조회 2,889
HTML 12-02-20 조회 4,344
HTML 12-02-17 조회 3,718
HTML 12-02-16 조회 2,735
HTML 12-02-15 조회 2,888