Skip to content

Commit

Permalink
created settings for validation on submit and allValid selectors
Browse files Browse the repository at this point in the history
defaulted validation to ignore hidden elements
  • Loading branch information
opendining committed Nov 1, 2011
1 parent f3d4566 commit ed14320
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions jquery.h5validate.js
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,13 @@
// Callback stubs
invalidCallback: function () {},
validCallback: function () {},

// When submitting, validate elements that haven't been validated yet?
// Defaulting to false to keep historical behavior consistent
validateOnSubmit: false,

// Elements to validate with allValid (only validating visible elements)
allValidSelectors: 'input:visible, textarea:visible, select:visible',

// Mark field invalid.
// ** TODO: Highlight labels
Expand Down Expand Up @@ -141,7 +148,8 @@
var $this = $(this),
valid = $this.data('valid');

if (typeof valid === 'undefined') { // validation has not been run on this element yet
// check if validation has not been run on this element yet
if (settings.validateOnSubmit && typeof valid === 'undefined') {
settings.validate.call(this, settings);
valid = $this.data('valid'); // get the validation result
}
Expand All @@ -150,7 +158,7 @@
},
allValid: function () {
var valid = true;
$(this).find('input:visible, textarea:visible, select:visible').each(function() {
$(this).find(settings.allValidSelectors).each(function() {
valid = $(this).h5Validate('isValid');
return valid;
});
Expand Down

0 comments on commit ed14320

Please sign in to comment.