字数を集計するtextarea


テキストの幅に文字数が制限されています.複数の文字が自動的に空に置換されます.
<textarea cols='30' rows=2 onkeyup=checkTextArea(this,60) onkeydown =checkTextArea(this,60) style="overflow:hidden;"></textarea>
<p>
	     :<em id='limittip'>60</em> 
</p>
<script type="text/javascript">
	function checkTextArea(obj,maxWords){		
		var limit = maxWords;	
		var limittip = document.getElementById('limittip');
		var str = obj.value;	
		var len = str.length;
		var reallen = 0;
		for(i=0;i<len;i++){
			if(str.charCodeAt(i)>255){
				reallen += 2;
				if(reallen > limit){
					reallen -= 2; 
					obj.value = str.substr(0,i); 
					break;
					}
				}
				else{
					reallen++;
					if(reallen > limit){
						reallen--;
						obj.value = str.substr(0,i);
						break;
					}
				}
		}
		limittip.innerHTML = limit - reallen;	
	}
</script>
原文の参考住所:http://www.decimage.com/web/js-for-textarea-count-bytes.html