当前位置: 代码迷 >> Web前端 >> textarea 限制篇幅数,并提示
  详细解决方案

textarea 限制篇幅数,并提示

热度:697   发布时间:2012-10-25 10:58:57.0
textarea 限制字数数,并提示

?

textarea称文本域,又称文本区,即有滚动条的多行文本输入控件,在网页的提交表单中经常用到。与单行文本框text控件不同,它不能通过maxlength属性来限制字数,为此必须寻求其他方法来加以限制以达到预设的需求。

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

?

?

<p><textarea name="contents" id="contents" cols="15" rows="5" size="10" onkeyup="sizecontrol()"></textarea><span id="a">已输入字符: </span></p>

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

?

?

javascript中的substr() 方法可在字符串中抽取从 start 下标开始的指定数目的字符

注释:substr() 的参数指定的是子串的开始位置和长度,因此它可以替代 substring() 和 slice() 来使用。

重要事项:ECMAscript 没有对该方法进行标准化,因此反对使用它。在opera浏览器中使用无效。

重要事项:在 IE 4 中,参数 start 的值无效。在这个 BUG 中,start 规定的是第 0 个字符的位置。在之后的版本中,此 BUG 已被修正。

  相关解决方案