Asp.net 文本框的日期验证
我一直在用它把日期作为mm/dd/yyyy格式Asp.net 文本框的日期验证,asp.net,Asp.net,我一直在用它把日期作为mm/dd/yyyy格式 <asp:CompareValidator ErrorMessage="(mm/dd/yyyy)" Display="Dynamic" ID="valcDate" ControlToValidate="txtDob" Operator="DataTypeCheck" Type="Date" runat="server"></asp:CompareValidator> <asp:RangeVal
<asp:CompareValidator ErrorMessage="(mm/dd/yyyy)" Display="Dynamic" ID="valcDate"
ControlToValidate="txtDob" Operator="DataTypeCheck" Type="Date"
runat="server"></asp:CompareValidator>
<asp:RangeValidator ID="valrDate" runat="server" ControlToValidate="txtDob"
MinimumValue="12/31/1950"
MaximumValue="1/1/2100" Type="Date" Text="Invalid Date" Display="Dynamic" />
但这也需要两位数的年份。。。
请建议您可能希望使用正则表达式表示日期:
<asp:RegularExpressionValidator ID="dateValRegex" runat="server" ControlToValidate="txtDob" ErrorMessage="Please Enter a valid date in the format (mm/dd/yyyy)" ValidationExpression="^(0[1-9]|1[012])[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d$"></asp:RegularExpressionValidator>
此外,正如Daniel在下面指出的,您需要与其他验证器一起使用此验证器来完全验证日期。您已经问了9个问题,但是仍然没有注意到代码示例按钮?+1可能希望为RegularExpressionValidator添加完整的代码,并解释这是必需的,同时也需要范围验证器,因为仅此正则表达式就允许一个无效日期,如2010年2月31日