多行文本框最大长度

时间:2018-04-19 04:55:29

标签: javascript asp.net

我希望<asp:textbox>并将其设置为多行 但是当我设置为多行maxlength属性不起作用。 如何通过jquery控制多行max length的{​​{1}}?

2 个答案:

答案 0 :(得分:2)

请改用正则表达式验证器。这将在客户端起作用

<asp:RegularExpressionValidator runat="server" ID="valInput"
    ControlToValidate="txtInput"
    ValidationExpression="^[\s\S]{0,100}$"
    ErrorMessage="Please enter a maximum of 100 characters"
    Display="Dynamic">*</asp:RegularExpressionValidator>

答案 1 :(得分:1)

试试吧

<script>

        function checkTextAreaMaxLength(textBox, e, length) {

            var mLen = textBox["MaxLength"];
            if (null == mLen)
                mLen = length;

            var maxLength = parseInt(mLen);
            if (!checkSpecialKeys(e)) {
                if (textBox.value.length > maxLength - 1) {
                    if (window.event)//IE
                        e.returnValue = false;
                    else//Firefox
                        e.preventDefault();
                }
            }
        }
        function checkSpecialKeys(e) {
            if (e.keyCode != 8 && e.keyCode != 46 && e.keyCode != 37 && e.keyCode != 38 && e.keyCode != 39 && e.keyCode != 40)
                return false;
            else
                return true;
        }

    </script>
HTML中的

<asp:TextBox runat="server" ID="TxtComment" onkeyDown="checkTextAreaMaxLength(this,event,'150');" TextMode="MultiLine" />