Custom Attribute:
input | data-parsley-date_is_after_or_equal_target_date | Start Date Field
JavaScript Field:
// Add new validation
window.Parsley.addValidator( 'date_is_after_or_equal_target_date', {
requirementType: 'string',
validateString: function( current_date_field_value, target_date_field_id ) {
// Check if field exists
if ( formyoula.form_fields[ target_date_field_id ] ) {
// Get target date field value
var target_date_field_value = new Date( formyoula.form_fields[ target_date_field_id ].get( 'value' ) );
// Compare date fields
var is_after = moment( current_date_field_value ).isAfter( target_date_field_value, 'day' );
var is_equal = moment( current_date_field_value ).isSame( target_date_field_value, 'day' );
// Return validation
return is_after || is_equal;
}
},
messages: {
en: 'End Date should be after or equal to Start Date'
}
} );
Example:
Form Template for import: