Srivastava
Srivastava

Reputation: 3578

Date validation for a textbox

I have been using this to take date as mm/dd/yyyy format...

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

but it is taking the two digit year also... plz suggest

Upvotes: 5

Views: 29013

Answers (1)

Paulie Waulie
Paulie Waulie

Reputation: 1690

You might want to use a regular expression for the date :

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

Also, as Daniel pointed out below you will need to use this in conjunction with your other validators to fully validate the date.

Upvotes: 18

Related Questions