想限制 textbox 中的字节数,例如只能输入6个字节,也就是说,6个半角,3个全角,超过了就无法继续输入

解决方案 »

  1.   

    TextBox的属性中本身就带有这个功能,调用属性MaxLength,赋值为6,
    或者使用javascript也可以
      

  2.   

    给你一个函数,来判断就可以了:
    public static bool OutOfLength(string str,int len)
    {
    byte[] bt = System.Text.Encoding.Default .GetBytes (str.Trim ());
    return bt.Length>len;
    }
      

  3.   

    MaxLength属性只是限制字符数,遇到双字节的和单字节的混合的,并且是要写数据库的,就不能控制了。
    用我上面的方法就行了。
      

  4.   

    <script language="Javascript">  
    function isNumberString(e)
    {
    if(document.Form1.elements[e].value.length<=6)
             {
                return (true);
             }
             else
             {
                alert('超长!');
                return (false);          }
    }
    </script><asp:textbox id="test" runat="server" Font-Names="Times New Roman" BorderStyle="None" Font-Size="12px"
    Width="80px" Height="22px" onchange="return isNumberString ('test');"></asp:textbox>
      

  5.   

    to  lovvver(春晖)  你的方法很对,但是如果输入的是中文字或者日文字符,例如微软拼音输入法一次可能输入好几个字,这样textbox中的字会保留,怎么解决?
      

  6.   

    Encoding.default.getbyte();用这个就可以的:)
      

  7.   

    http://singlepine.cnblogs.com/articles/265807.html