Skip to content

Instantly share code, notes, and snippets.

@stormbreakers
Last active June 1, 2016 13:17
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save stormbreakers/f9465b096ddfaafd35cb918004b8b27b to your computer and use it in GitHub Desktop.
Save stormbreakers/f9465b096ddfaafd35cb918004b8b27b to your computer and use it in GitHub Desktop.
custom validation using parsleyjs
var parseDate = function(s) {
var re = /^(\d\d)-(\d\d)-(\d{4}) (\d\d):(\d\d):(\d\d)$/;
var m = re.exec(s);
return m ? new Date(m[3], m[2]-1, m[1], m[4], m[5], m[6]) : null;
};
window.ParsleyValidator
.addValidator('checkEndDate', function (value, requirement) {
var endDate = new Date(parseDate(value).toString());
var startDate = new Date(parseDate($(requirement).val()).toString());
return Date.parse(startDate) <= Date.parse(endDate);
}, 32)
.addMessage('en', 'checkEndDate', 'End date cannot be less than Start date')
.addValidator('checkStartDate', function (value, requirement) {
var startDate = new Date(parseDate(value).toString());
var endDate = new Date(parseDate($(requirement).val()).toString());
return Date.parse(startDate) <= Date.parse(endDate);
}, 32)
.addMessage('en', 'checkStartDate', 'Start date cannot be less than End date');
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment