String.prototype.len=function(){ 
return this.replace(/[^\x00-\xff]/g,"**").length; 
} 

//Set maxlength for multiline TextBox 
function setMaxLength(object,length) 
{
	
	var result = true; 
	var controlid = document.selection.createRange().parentElement().id; 
	var controlValue = document.selection.createRange().text; 
	var tempString=object.value;
	
	var tt=""; 
	for(var i=0;i<length;i++) 
		{ 
			if(tt.len()<length) 
				{
				tt=tempString.substr(0,i+1); 
				
				}
			else 
				{
				
				break; 
				}
		} 
	if(tt.len()>length)
		{
		tt=tt.substr(0,tt.length-1);
		
		}
	object.value=tt;
	
	
} 

//Check maxlength for multiline TextBox when paste 
function limitPaste(object,length) 
{ 
		var tempLength = 0; 
		if(document.selection) 
		{ 
			if(document.selection.createRange().parentElement().id == object.id) 
			{ 
				tempLength = document.selection.createRange().text.len(); 
			} 
		} 
		var tempValue = window.clipboardData.getData("Text"); 
		tempLength = object.value.len() + tempValue.len() - tempLength; 

		if (tempLength > length) 
		{ 	
			tempLength -= length; 
			var tt=""; 
			for(var i=0;i<tempValue.len()-tempLength;i++) 
				{ 
					if(tt.len()<(tempValue.len()-tempLength)) 
					tt=tempValue.substr(0,i+1); 

					else 
						break; 
				} 
			if(tt.len()<=0)
			{	
				window.event.returnValue=false;
				
			}
			else
			{
				tempValue=tt; 
				window.clipboardData.setData("Text", tempValue); 
				window.event.returnValue = true; 
			}
		} 
	

} 

function PressLength()
{
	
	if(event.srcElement.type=="text" || event.srcElement.type=="textarea" )
	{
		if(event.srcElement.length!=null)
			setMaxLength(event.srcElement,event.srcElement.length);
		
	}
}

function LimitLength()
{

	if(event.srcElement.type=="text" || event.srcElement.type=="textarea" || event.srcElement.type=="password")
	{
		if(event.srcElement.length!=null)
			limitPaste(event.srcElement,event.srcElement.length);
	}
}
document.documentElement.attachEvent('onkeyup', PressLength); 
document.documentElement.attachEvent('onpaste', LimitLength);