通过JQuery的keyup事件: 复制代码 代码如下: <html> <head> <title>JQuery为textarea添加maxlength</title> <script type="text/javascript" src="jquery-1.4.js"></script> </head> <body> <textarea style="width:300px; height:60px;" maxlength="10"></textarea> </body> </html> <script type="text/javascript"> $(function(){ $("textarea[maxlength]").keyup(function(){ var area=$(this); var max=parseInt(area.attr("maxlength"),10); //获取maxlength的值 if(max>0){ if(area.val().length>max){ //textarea的文本长度大于maxlength area.val(area.val().substr(0,max)); //截断textarea的文本重新赋值 } } }); }); </script> 如果只用keyup只能判断键盘输入的maxlength,利用鼠标的粘贴还是可以超过maxlength的限制,可以利用blur事件做判断: 复制代码 代码如下: $("textarea[maxlength]").blur(function(){ var area=$(this); var max=parseInt(area.attr("maxlength"),10); //获取maxlength的值 if(max>0){ if(area.val().length>max){ //textarea的文本长度大于maxlength area.val(area.val().substr(0,max)); //截断textarea的文本重新赋值 } } }); 失去焦点后截断textarea的文本。 通过blur事件判断后还是有问题,如果是粘贴后直接提交而没有做对textarea的长度验证的情况下,还是会把textarea的全部内容提交。
推荐阅读
JScript中的prototype(原型)属性研究第1/2页
我们使用prototype属性提供对象的类的一组基本功能。并且对象的新实例会"继承"赋予该对象原型的操作。但是这个prototype到底是怎么实现和被管理的呢?对于对象的prototype属性的说明,JScript手册上如是说:所有 J>>>详细阅读
本文标题:JQuery为textarea添加maxlength属性的代码
地址:http://www.17bianji.com/kaifa2/JS/26650.html
1/2 1