<INPUT id="username" name=userName runat=server style="width: 136px">
                              <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="username" ErrorMessage="用户名必须为6-20个字符!" ValidationExpression='\S{6,20}' />
我想是验证6-20位必须输入??为什么不输入的时候不提示错误了?
整样改成输入空格和在不输入的时候也报错???

解决方案 »

  1.   

    不输入提示你得加一个RequiredFieldValidator控件
      

  2.   

    大S比较漂亮 小S比较搞笑
    大S非空格 小S空格
      

  3.   

    RegularExpressionValidator 不验证为空的情况,这种情况需要使用 RequiredFieldValidator。
    另外,你的正则表达式也写的有问题。你的表达式在输入21个字符的时候也能通过验证,因为21个字符包含了20个字符这个子串。
    需要在你的正则表达式前后加上"^\S{6,20}$"