日期:2014-05-16  浏览次数:20322 次

JS控制textarea输入中英文字数

IE中的textarea控制不了汉字的输入长度,所以只能自己去写一个脚本取判断。

在web页面中:

<textarea rows="6" cols="40" id="memo" name="memo" class="txt"  onpropertychange="Javascript:zlpc(200);" onpaste="return false;" style='height: 101px;width: 535px;'></textarea>

?添加如下脚本:

<script type="text/javascript"> 
						var lastValue=""; 
						function zlpc(lSize) 
						{ 
							//debugger; 
							if (event.propertyName=="value") 
							if (event.srcElement.value.truelen()>lSize) 
							{ //长度超出时,取消输入 
								//event.returnValue=false; //这种取消事件的方法没有效果 
								//只好用恢复原值的方法 
								event.srcElement.value=lastValue; 
							} 
							else 
							lastValue=event.srcElement.value; 
						} 
						
						String.prototype.truelen=function() 
						{ 
							var i=0; 
							for (var j=0;j<this.length;j++) 
							{ 
							if (this.charCodeAt(j)>255) 
							i+=2; 
							else 
							i++; 
						} 
						return i; 
						} 
				</script>

?