文本框的日期验证

时间:2010-09-08 11:26:44

标签: 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:RangeValidator ID="valrDate" runat="server" ControlToValidate="txtDob"  
    MinimumValue="12/31/1950"
    MaximumValue="1/1/2100" Type="Date" Text="Invalid Date" Display="Dynamic" />

但这也是两位数的年份...... PLZ建议

1 个答案:

答案 0 :(得分:18)

您可能希望使用正则表达式作为日期:

<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>

此外,正如丹尼尔在下面指出的那样,您需要将其与其他验证人员一起使用,以完全验证日期。