Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Date validation for a textbox

Tags:

asp.net

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

like image 554
Srivastava Avatar asked Sep 08 '10 11:09

Srivastava


1 Answers

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.

like image 159
Paulie Waulie Avatar answered Oct 17 '22 02:10

Paulie Waulie