如何限制文本框中允许的字符数?

Beg*_*ner 21 asp.net

<asp:TextBox ID="txtBodySMS" runat="server" Rows="10"                          
           TextMode="MultiLine" Width="100%"></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)

这是我的文本框.如何限制用户在其中键入的字符数?

cla*_*oda 20

MaxLength不适用于ASP.NET到Textboxes TextMode="MultiLine".一个简单的方法来做到这一点,并保持你的MultiLine标记是添加:

onkeypress="return this.value.length<=10" 
Run Code Online (Sandbox Code Playgroud)

10是极限.像这样:

<asp:TextBox ID="txtBodySMS" runat="server" Rows="10" onkeypress="return this.value.length<=10" TextMode="MultiLine" Width="100%"></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)

  • 这适用于keydowns,但是使用ctrl + v将大量文本粘贴到框中会打破这个,你仍然可以输入你喜欢的内容 (3认同)
  • 但是当你达到字符限制 - 文本框被冻结时,你不能从中删除任何东西 (2认同)

Beg*_*ner 18

这样做对我来说.我没有保留MultiLine属性.

<asp:TextBox ID="txtBodySMS" runat="server" Rows="10" MaxLength="2" Width="100%"></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)


Sen*_*kin 11

的MaxLength = "的Int32"

<asp:TextBox ID="txtBodySMS" runat="server" Rows="10" MaxLength="220"                         
           TextMode="MultiLine" Width="100%"></asp:TextBox>
Run Code Online (Sandbox Code Playgroud)

  • 不是,需要拿出多线 (7认同)

liv*_*ove 9

最大字符长度验证(允许最多8个字符)

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator Display = "Dynamic" ControlToValidate = "TextBox1" ID="RegularExpressionValidator1" ValidationExpression = "^[\s\S]{0,8}$" runat="server" ErrorMessage="Maximum 8 characters allowed."></asp:RegularExpressionValidator>
Run Code Online (Sandbox Code Playgroud)

最小字符长度验证(至少需要8个字符)

<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator Display = "Dynamic" ControlToValidate = "TextBox2" ID="RegularExpressionValidator2" ValidationExpression = "^[\s\S]{8,}$" runat="server" ErrorMessage="Minimum 8 characters required."></asp:RegularExpressionValidator>
Run Code Online (Sandbox Code Playgroud)

最小和最大字符长度验证(最少5个字符和最多8个字符)

<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
<asp:RegularExpressionValidator Display = "Dynamic" ControlToValidate = "TextBox3" ID="RegularExpressionValidator3" ValidationExpression = "^[\s\S]{5,8}$" runat="server" ErrorMessage="Minimum 5 and Maximum 8 characters required."></asp:RegularExpressionValidator>
Run Code Online (Sandbox Code Playgroud)