正则表达式验证器允许空作为输入

时间:2009-04-22 16:04:51

标签: asp.net validation

这个正则表达式验证器不应该确保用户在文本框中输入内容吗?由于某种原因,空文本框会通过。

<asp:RegularExpressionValidator ID="revNumericValidator" runat="server" ValidationExpression="^\d+$"
                    ControlToValidate="tb1" ErrorMessage="Please enter blah (must be a number)." />

2 个答案:

答案 0 :(得分:8)

按惯例的验证程序不验证空文本。如果您想要一个值,您必须 添加RequiredFieldValidator

MSDN

  

如果输入控件为空,则验证成功。如果关联的输入控件需要值,则除了 RegularExpressionValidator 控件外,还应使用RequiredFieldValidator控件。

答案 1 :(得分:1)

我不确定为什么会出现这种情况,但是对于ASP.NET验证器控件,我总是必须将RegEx验证器与Required字段验证器结合使用,因为如果包含文本中的文本,RegEx似乎只会触发该领域。