diff --git a/lib/forms.js b/lib/forms.js index 558e5c8..c4d514d 100644 --- a/lib/forms.js +++ b/lib/forms.js @@ -58,7 +58,9 @@ exports.create = function (fields, opts) { b.isValid = function () { var form = this; return Object.keys(form.fields).every(function (k) { - return form.fields[k].error === null || typeof form.fields[k].error === 'undefined'; + var field = form.fields[k]; + if (is.fn(field.isValid)) { return field.isValid(); } + return field.error === null || typeof field.error === 'undefined'; }); }; return b;