/**
 * @author chukhanhvan (chukhanhvan@gmail.com)
 * 
 * set maxlength for <textarea maxlength='20'><textarea>
 * required: jquery 1.3.2 or higher
 */
$(function(){
	$('textarea').each(function(){
		var max = parseInt($(this).attr('maxlength'));
		this.onkeypress = function(e){
			var ob = e || event;
			var keyCode = ob.keyCode;
			var hasSelection = 
				document.selection ? 
				document.selection.createRange().text.length > 0 : 
				this.selectionStart != this.selectionEnd;
			return !(this.value.length >= max 
					&& (keyCode > 50 || keyCode == 32 || keyCode == 0 || keyCode == 13) && !ob.ctrlKey && !ob.altKey && !hasSelection);
		};
		this.onkeyup = function(){
			if(this.value.length > max){
				var text = $.trim(this.value);
				this.value = text.substring(0, max);
			}
		};
	});
});

