본문 바로가기

Local Oriented/jQuery

글자수(Bytes) 체크


jQuery 를 이용하여 Byte 수를 체크하는 로직을 보기가 어렵네요.
요즘은 DB 도 그렇고 Java 도 그렇고 N-Bytes 체계를 지원하기 때문에 문제가 없기도 하겠지만,
이전에 사용하던 체계에서는 Bytes 체계를 아직도 사용하기 때문에,
기존 소스와 혼용을 해야 할 듯 합니다.

http://burchurl.egloos.com/2264355
  - 숫자로 표시되는 문자열을 가져와서 수치로 전환하기 위해 곱하기 1을 하는데,
     Number() 라는 함수가 있으니까 이걸 사용하는 것이 맞을 것같습니다.
     var before = Number($count.text());
     //var before = $count.text() * 1;
  - textarea 와 div span 등의 순서로 여러 쌍을 생성해도 각각에 대해서 그 기능이 제대로 잘 돌아갑니다.

 
직접 작업해야 하는 경우라면..
function countBytesNoTrim(o){ // Byte 수를 계수한다
 var str = o.value;
 if(str=='') return 0;

 var bytes = 0;
 for(var i=0,s=str.length; i<s; i++){
  var chr = str.charCodeAt(i);
  if(chr>31 && chr<127) bytes++; // 32~47 과 58~64 특수기호, 48~57 숫자,  65~90 영문 대문자, 91~96 과 123~126 특수문자, 97~122 영문 소문자
  else if(escape(chr).length>1) bytes += 2; // \n 의 경우 \r\n 으로 DB 에 들어갑니다. 따라서 4Bytes
  else bytes++;
 }

 return bytes;
}


'Local Oriented > jQuery' 카테고리의 다른 글

테흐 La Tex 를 jQuery 로, 참 대단하다는..  (0) 2012.01.15
인쇄 Print  (0) 2012.01.15
jQuery Cookie  (1) 2012.01.11
jQuery 정렬  (0) 2012.01.09
jQuery, live 죽이는 die 와 bind 죽이는 unbind 그리고 on 과 off  (0) 2011.12.22