页面上有一个文本框,对应的数据库字段类型是char型,长度为20,怎样判断输入的内容控制在20位以内?并且如果有中文的时候,怎样知道用户输入的数据长度?

解决方案 »

  1.   

    <asp:TextBox id="textbox1" runat=server maxlength="20"></asp:TextBox>
      

  2.   

    <input type="text" maxlength="20">
      

  3.   

    根据字符串的长度啊一个中文占两个字节,中文可以通过ASCII码来判断
      

  4.   

    一个中文占两个字节,中文可以通过ASCII码来判断??能说详细点吗?
      

  5.   

    textbox服务器控件是无法实现这个要求的,因为textbox本身将中文也认为是一个字符
    如果有中文可以判断它的值是否大于127,这个算法不是很严谨,不过针对仅包含中文或字符的字符串来说还是可以的
    private int LenW(string s)
    {
    int i = 0;
    foreach(char c in s)
    {
    if ((int)c > 127) 
    i+=2;
    else
    i+=1;
    }
    return i;
    }
      

  6.   

    去学学正则表达式,用验证控件做,RegularExpressionValidator
      

  7.   

    pupo(泡泡) :搞定了,谢谢前辈^_^
      

  8.   

    标准做法:Encoding.Default.GetByteCount("XXXXXXXXX")