完美兼容实现:解决textarea输入框限制字数长度(带统计功能)

摘要:extarea称文本域【文本区】,即有滚动条的多行文本输入控件,在网页的提交表单中经常用到。textarea有maxlength属性,但是textarea不兼容ie8/9。如何实现textarea输入框限制字数长度的兼容问题呢?

extarea称文本域【文本区】,即有滚动条的多行文本输入控件,在网页的提交表单中经常用到。textarea有maxlength属性,但是textarea不兼容ie8/9。如何实现textarea输入框限制字数长度的兼容问题呢?


通常的做法就是使用JavaScript脚本语言来实现对textarea文本域的字数输入限制,主要思路就是先定义一个显示区域,创建键盘事件(onkeyup或onkeydown),利用函数统计字数,判断后再显示。


实现代码如下:

html:

<textarea id="contents" rows="3"  maxlength="20" 
	onchange="sizecontrol()" onkeydown="sizecontrol()" onkeyup="sizecontrol()" 
></textarea> 
<span id="ts">已输入字符: </span></p>

js:

<script>
var maxl=20//总长  
function sizecontrol(){  
	var contents=document.getElementById("contents"),
		ts=document.getElementById("ts"),
   		len=contents.value.length;  
   	if(len>maxl){
   		contents.value=contents.value.substr(0,maxl)
   	}else{
   		ts.innerHTML="已输入:"+len+"/"+maxl+" 字符"
   	} 
}  
</script>


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_787