Uk format Date test
Tests a given string to see whether it matches the given format dd/mm/yyyy
by jamessouth
JavaScript
var isValidDate = function (value) {
/// <summary>
/// Adds a custom rule to ensure the input is in the format dd/mm/yyyy.
/// </summary>
var isValid = false,
rDate = /^\d{1,2}\/\d{1,2}\/\d{4}$/;
if (rDate.test(value)) {
var splitDate = value.split("/"),
dd = parseInt(splitDate[0], 10),
mm = parseInt(splitDate[1], 10),
yyyy = parseInt(splitDate[2], 10),
date = new Date(yyyy, mm -1, dd);
if ((date.getFullYear() === yyyy) && (date.getMonth() === mm -1) && (date.getDate() === dd)) {
isValid = true;
}
}
return isValid;
};
console.log(isValidDate("01/12/2012")); // true
console.log(isValidDate("01/13/2012")); // false
console.log(isValidDate("31/06/2012")); // false
console.log(isValidDate("29/02/2012")); // true
console.log(isValidDate("29/02/2013")); // false