【项目经验】——文本框限制输入字符长度

       当文本框的TextMode为SingleLine时,限制字符长度是一件很简单的事情,只要设置起MaxLength就可以搞定了,但当TextMode为MultiLine时,你会发现,MaxLength并不奏效。
 
      恰巧项目中应用到了限制输入字符数,MultiLine模式下,rows和MaxLength都不起作用,所以通过js来控制输入的字符数和输入行数:

      JS代码:
    <script type="text/javascript">
   function CheckLength(obj,maxLength,lines)
   {
        if(obj.value.length > maxLength)
            {
                alert('请确保文本框输入的内容最大长度为'+maxLength+'个字符,超出部分将自动截断!');
                obj.value=obj.value.substring(0,maxLength-1);
            }
        var arr = obj.value.split("\n");
        if(arr.length > lines)
        {
                var value="";
                alert('请确保文本框输入的内容最大行数为'+lines+',超出部分将自动截断!');
                for(loop=0;loop<lines;loop++)
                {
                    if(loop != lines -1)
                        value=value + arr[loop] + "\n";
                    else
                        value = value + arr[loop];
                }
                obj.value = value;
        }
   }


<asp:TextBox ID="txtProblem" runat="server" TextMode="MultiLine"  Height="230px" Rows="8"></asp:TextBox><br />

      CS代码:
 this.txtProblem.Attributes.Add("onKeyDown", "CheckLength(this,300,6);");
 this.txtProblem.Attributes.Add("onKeyUp", "CheckLength(this,300,6);");

      慢慢积累~如果大家有更好的实现方法,欢迎与小编沟通~~~

你可能感兴趣的:(经验,字符长度限制)