首页 > 网站 > WEB开发 > 正文

textarea 输入框限制字数

2024-04-27 14:21:43
字体:
来源:转载
供稿:网友

textarea 输入框限制字数

在textarea标签中,只需要设置maxlength=”***”即可,但是在textarea标签中,IE9及IE9以下浏览器是不支持的,IE10、IE11则支持,估计后续的版本应该都会支持。

现在来说下怎么让大部分IE版本都支持textarea标签限制字数。

第一种方法:

<textareaid="taContent"rows="3"maxlength="20"onchange="this.value=this.value.substring(0,20)"onkeydown="this.value=this.value.substring(0,20)"onkeyup="this.value=this.value.substring(0,20)"></textarea>

这样子即可。

备注:onchange、onkeydown、onkeyu三者缺一不可。

如省略onchange,当你用负责功能,此时一直按着ctrl不松开,鼠标去点击其他地方(焦点移出textarea)时,不会自动取消超出部分;

如省略onkeydown,猛敲的时候会有很多个字符突然不见了;

如省略onkeyup,原想预计20的情况下,会变成21,并且最后一个字符是最后敲进去的。

Maxlength也不可省略,加上maxlength当碰到IE10及以上版本时,可以完美的实现限制输入框字数的功能。不想其他低版本的IE浏览器还可以出现一个字母后消失。

第二种方法:

<textarea onkeyup="checkLen(this)"></textarea> <div>您还可以输入 <span id="count">3</span> 个文字</div> <script type="text/javascript"> function checkLen(obj) { var maxChars = 3;//最多字符数 if (obj.value.length > maxChars) obj.value = obj.value.substring(0,maxChars); var curr = maxChars - obj.value.length; document.getElementById("count").innerHTML = curr.toString(); } </script>

以上两种方法都是兼容各大主浏览器的(包括IE6)。


发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表