我有一个TextBox,我已经用RequiredFieldValidator验证了它必须填写
但是,我现在还要验证它的长度在6个字符之间
这个TextBox里的值在数据库里是varchar(6)
我想在源里,在  asp:TextBox ID="***" runat="server" MaxLength=
这里写个MaxLength=  不知道可以不可以,如果可以怎么写。如果不行,用RangeValidator  控件怎么控制字符的长度?

解决方案 »

  1.   

    直接写段javascript  验证就好    
    .length <= 6
      

  2.   

    MaxLength是字符数,字段里是字节数,不能控制,用RangeValidator控制数值范围很容易,但控制字符串长度就不方便了,你可以用CustomValidator来验证。
      

  3.   

    用CustomValidator来验证  怎么写方法啊 ?
      

  4.   

    if (System.Text.Encoding.Default.GetBytes(this.TextBox1.Text).Length > 6)
            {
                args.IsValid = false;
            }
            else
            {
                args.IsValid = true;
            }
      

  5.   

    抱歉,忘了加事件
    protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
        {
            if (System.Text.Encoding.Default.GetBytes(this.TextBox1.Text).Length > 6)
            {
                args.IsValid = false;
            }
            else
            {
                args.IsValid = true;
            }
        }