I'm building a contact form and I need help with the jQuery validator.
function contactform() {
$("form #submit").on("click", function() {
$("form input").removeClass("error");
validator();
// 3rd action goes here
});
});
validator()
checks to see if any input is left empty, and if so it adds an error class to it:
function validator() {
$("form input").each(function() {
var value = $(this).val();
if (value.length <= 0) {
$(this).addClass("error");
return false;
}
});
});
Now, for the 3rd action in contactform()
I want to say that if validator() = true
(i.e. there no inputs that are empty), then continue on to the next code.
I can't seem to return the value of validator()
. Does anybody know the best way to do this?
Here is another solution using filter
method:
function validator() {
return $("form input").filter(function() {
return $.trim(this.value).length == 0;
}).addClass("error").length == 0;
});
function contactform() {
...
if (validator()) {
// it's OK
} else {
// there are errors
}
}
UPDATE: Awesomely updated with the help of @am_not_i_am. Thanks!
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With