【问题标题】:set maxlength in textarea在 textarea 中设置 maxlength
【发布时间】:2014-01-24 07:21:15
【问题描述】:

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

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

【问题讨论】:

    标签: textarea maxlength


    【解决方案1】:

    试试这个javascript函数:

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

    【讨论】:

    • 或者只是在提交时获取长度并进行验证。
    • 如果有人复制粘贴文本会失败。
    【解决方案2】:

    您必须为两个事件编写代码,keyup 和复制粘贴,所以试试这个:

    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;
    }
    

    【讨论】:

      【解决方案3】:

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

      Here is how I handle the max length,它是一个jquery插件,很容易设置,浏览器的不同行为没有问题,而且给你使用的字符反馈。

      【讨论】:

        猜你喜欢
        • 2011-05-26
        • 2021-03-25
        • 2023-01-05
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2022-07-06
        • 2018-04-03
        相关资源
        最近更新 更多