Pages

Monday 7 April 2014

Java script validates a date field ensure it's in the format mm/dd/yyyy


This script validates a date field to ensure it's in the format mm/dd/yyyy. It also intelligently checks that the date ranges are valid, so something like 02/30/2005 is caught.

Source code:

<html>
<head>
<script type="text/javascript">

function checkdate(input){
var validformat=/^\d{2}\/\d{2}\/\d{4}$/        
var returnval=false
if (!validformat.test(input.value))
alert("Invalid Date Format. Please correct and submit again.")
else{
var monthfield=input.value.split("/")[0]
var dayfield=input.value.split("/")[1]
var yearfield=input.value.split("/")[2]
var dayobj = new Date(yearfield, monthfield-1, dayfield)
if ((dayobj.getMonth()+1!=monthfield)||(dayobj.getDate()!=dayfield)||(dayobj.getFullYear()!=yearfield))
alert("Invalid Day, Month, or Year range detected. Please correct and submit again.")
else
returnval=true
}
if (returnval==false) input.select()
return returnval
}
</script>
</head>
<body>
<form onSubmit="return checkdate(this.mydate)">
<input type="text" name="mydate" />
<input type="submit" value="submit" /><br />
<b>Valid date format:</b> mm/dd/yyyy<br />
<input type="submit" value="submit" />
</form>
</body>
</html>

No comments:

Post a Comment