jQuery.fn.maxLength = function(max, feedBElm) {
	this.each(function() {
		maxLengthFeedback = $(feedBElm).html();
		$(feedBElm).html(maxLengthFeedback + ' ' + (max));
		var type = this.tagName.toLowerCase();
		var inputType = this.type? this.type.toLowerCase() : null;
		if(type == "textarea"){
			this.onkeypress = function(e){
				var obET = e || event;
				var keyCode = obET.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) && !obET.ctrlKey && !obET.altKey && !hasSelection);
			};
			this.onkeyup = function() {
				$(feedBElm).html(maxLengthFeedback + ' ' + (max-this.value.length));
				if(this.value.length > max) {
					this.value = this.value.substring(0,max);
				
				}
			};
		}
	});
};

