Solved

Validating dates in format dd MMM yyyy

Posted on 2004-10-04
11
1,637 Views
Last Modified: 2012-06-27
I am writing an app that will be accessed by UK and US users, so date input is tricky. I decided to enforce date input in the format dd MMM yyyy (eg 05 Oct 2004) as it is unambiguous. I used a regular expression validator to check for 2 digits, a space, 3 alpha, a space, 4 digits. That bit works. But when I use a RangeValidator to check it is a valid date, so that people don't input 99 XYZ 1234, it fails even on 'valid' dates.

Any suggestions how I can handle UK and US date input?
0
Comment
Question by:crescendo
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 3
  • 2
  • +1
11 Comments
 
LVL 9

Author Comment

by:crescendo
ID: 12222268
Sorry, I meant a CompareValidator, not a RangeValidator.
0
 
LVL 21

Expert Comment

by:surajguptha
ID: 12224091
Can u add the regular expression for clarity?
0
 
LVL 8

Expert Comment

by:boulder_bum
ID: 12224321
Maybe a globalization settings issue?

If all else fails, I suppose you can use two Regex validators. Inelegant, perhaps, but it should work.
0
Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

 
LVL 9

Author Comment

by:crescendo
ID: 12224511
I think I wasn't clear.

The RegEx works, so I can validate the general format. BUT... I still need to check that the month names and number of days in the month are valid, e.g. not allow 29 Feb 2003. I hoped the CompareValidator, set to check a date data type, would do this, but it complains because it presumably expects 30/11/2004 (UK) format dates, not 30 Nov 2004.

I can't change the regional settings because there are other webs on the server and it might affect them.
0
 
LVL 21

Expert Comment

by:surajguptha
ID: 12224550
Why dont you try writing a java script for the same to validate the dates?
0
 
LVL 9

Author Comment

by:crescendo
ID: 12224651
<<Why dont you try writing a java script for the same to validate the dates?>>

I was assuming that I wasn't the first person in the universe to have to accept and validate dates from both UK and US users, so there must be a solution out there which would save me doing all the work myself.

I'll write it in server-side code.

Thanks

0
 
LVL 21

Expert Comment

by:surajguptha
ID: 12224688
Just a suggestion: Why dont you use a dropdown for the months to enforce MMM or may be months and years?
0
 
LVL 9

Author Comment

by:crescendo
ID: 12224717
I'd still have the same problem of validating the number of days in each month.

I'm just surprised that the CompareValidator doesn't allow this format. Perhaps it only allows the format set on the regional settings, so if I set that it would work. But, as I said above, that would break other apps.
0
 
LVL 8

Expert Comment

by:boulder_bum
ID: 12224949
I believe you can handle the System.Globalization issues on a more local level. This may help, may not. I haven't really had to deal with this issue before.

DateTimeFormatInfo Class
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/cpref/html/frlrfsystemglobalizationdatetimeformatinfoclasstopic.asp

Once America takes over THE REST of the world, this won't be so much of an issue. Metric system be damned.

I wouldn't be surprised if you can tweak the culture settings for the validator.
0
 
LVL 3

Accepted Solution

by:
dabitbol earned 250 total points
ID: 12228030
I had the same problem than you and just used a calendar control. I think it's the simplest way. You can make as a pop-up calendar that inputs that date in read-only textbox.

David
0
 
LVL 3

Expert Comment

by:dabitbol
ID: 12229981
glad I could help!
0

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

User art_snob (http://www.experts-exchange.com/M_6114203.html) encountered strange behavior of Android Web browser on his Mobile Web site. It took a while to find the true cause. It happens so, that the Android Web browser (at least up to OS ver. 2.…
The article shows the basic steps of integrating an HTML theme template into an ASP.NET MVC project
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial
Are you ready to implement Active Directory best practices without reading 300+ pages? You're in luck. In this webinar hosted by Skyport Systems, you gain insight into Microsoft's latest comprehensive guide, with tips on the best and easiest way…

735 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question