我在ASP.NET中使用RegularExpressionValidator。我有这些验证器用于我的asp:文本框控件:
<asp:RangeValidator
ID="rvDate"
runat="server"
ControlToValidate="txtCrimeDate"
Type="Date"
ErrorMessage="Must be within latest three months"
Display="Dynamic"
OnInit="RangeValidator_Init">
</asp:RangeValidator>
<asp:RegularExpressionValidator
ID="revDate"
runat="server"
ControlToValidate="txtCrimeDate"
Display="Dynamic"
ErrorMessage="Must be in format YYYY-MM-DD"
ValidationExpression="[0-9]{4}-[0-9]{2}-[0-9]{2}">
</asp:RegularExpressionValidator>
我在代码隐藏中设置了RangeValidator的最小值和最大值,它按预期工作。但!如果我输入一年有2个数字的东西,比如15-11-28,一切都会通过,甚至是其他控件的其他验证器。有什么想法吗?
答案 0 :(得分:0)
检查日期格式(美国或其他),日期和月份的0-9不正确,例如:
2013-99-99
使用CompareValidator控件,主要用于字符串匹配,但可以检查两个日期范围。