0

我想添加一个带有max-length属性的输入框,但是当我将它的最大长度属性设置为 500 并在输入框中输入最大文本时,它不会占用最大文本。只有当我在输入框中输入限制文本时它才有效。

4

2 回答 2

2

在多行文本框中,您不能设置最大长度。您必须通过 javascript 检查。

于 2012-10-19T07:24:38.637 回答
0

您可以设置客户端验证器:

<body>
<form id="form1" runat="server">
<div>

    <!-- text box whose length should be limited -->
    <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>

    <!-- validator to check this -->
    <asp:CustomValidator ID="CustomValidator1" runat="server" 
        ClientValidationFunction="CheckTextLength" ErrorMessage="Too long" />
    <br />
    <br />
    <asp:Button ID="Button1" runat="server" Text="Button" />

</div>
</form>

然后,您可以编写一个名为 CheckTextLength 的 JavaScript 函数来检查文本框 TextBox1 的长度是否超过特定长度。就像是:

function CheckTextLength(source, arguments) {
        if (arguments.Value.length < 10) {
            arguments.IsValid = true;
        } else {
            arguments.IsValid = false;
        }
    }

如果我更了解 JavaScript,我会给出确切的答案!但是,这种方法依赖于启用 JavaScript 的用户。

于 2012-10-19T08:00:40.193 回答