textbox的textmode取为multiline多行时,其maxlength不起作用

方法一:  验证控件验证(经实践可行)

Setting the Maxength of a TextBox when it is in Multiline, You can use RegularExpressionValidator control as shown below 

<asp:TextBox ID="txtConclusion" MaxLength="200" TextMode="MultiLine" Height="100px" Width="400px" runat="server" />
<asp:RegularExpressionValidator ID="txtConclusionValidator1" ControlToValidate="txtConclusion" Text="超过200字" ValidationExpression="^[\s\S]{0,200}$" runat="server" />


方法二:弹出对话框提示
1.html代码

<HTML>
    
<HEAD>
        
<title>WebForm6</title>
        
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
        
<meta name="CODE_LANGUAGE" Content="C#">
        
<meta name="vs_defaultClientScript" content="JavaScript">
        
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
        
<script language="javascript">            
            
function isOver(sText,len)
            
{
                
var intlen=sText.value.length;
                
if (intlen>len)
                
{
                    alert(
"The content length must Less than or Equal "+len);
                    sText.focus();
                    sText.select();
                }

            }

        
</script>
    
</HEAD>
    
<body MS_POSITIONING="GridLayout">
        
<form id="Form1" method="post" runat="server">
            
<asp:TextBox id="txtName" style="Z-INDEX: 102; LEFT: 200px; POSITION: absolute; TOP: 104px" runat="server"
                TextMode
="MultiLine" Height="112px" Width="271px"></asp:TextBox>
        
</form>
    
</body>
</HTML>
2.cs代码
private void Page_Load(object sender, System.EventArgs e)
        
{
            
this.txtName.Attributes.Add("onblur","isOver(this,1000);");
        }

方法三: 自定义控件

Multiline TextBox with MaxLength Validation

http://www.codeproject.com/KB/aspnet/Textarea_Length_Validator.aspx
原文地址:https://www.cnblogs.com/emanlee/p/1204990.html