在textarea中设置maxlength

时间:2014-01-24 07:21:16

标签: textarea maxlength

我想在textarea中设置maxlength。我在textarea中定义了maxlength属性,但它似乎毫无用处。请帮忙。我的代码:

<html:textarea styleClass="textarea" maxlength="2100" cols="60" rows="3">

3 个答案:

答案 0 :(得分:1)

试试这个javascript函数:

$(function(){  
  $("#id").keypress(function() {  
    var maxlen = 100; //length as you desire
    if ($(this).val().length > maxlen) {  
      return false;
    }  
  })
});  

答案 1 :(得分:1)

你必须为两个事件,keyup和copy paste编写代码,所以试试这个:

onKeyPress = "return ( this.value.length < 2100 );", onPaste = "return onTextAreaPaste(this,2100)"

这是Js:

function onTextAreaPaste(textArea,size) {        
    var length = textArea.value.length;
    if(window.clipboardData!=undefined)
        length = textArea.value.length + window.clipboardData.getData('Text').length;
    return length < size;
}

答案 2 :(得分:1)

我最近遇到了textarea maxlength属性的问题,因为新行在Firefox中被视为 1 ,在IE和Chrome中被视为 2 。所以我决定选择 JavaScript 来处理这个问题。

Here is how I handle the max length,它是一个 jquery插件,非常容易设置,浏览器的不同行为也没有问题,另外还会为您提供所用字符的反馈。