Dla wyjaśnienia, oto bardziej szczegółowy przykład demonstrujący walidację formularza przy użyciu jQuery Validation Unobtrusive.
Oba używają następującego JavaScript z jQuery:
$("#commentForm").validate({
submitHandler: function(form) {
// some other code
// maybe disabling submit button
// then:
alert("This is a valid form!");
// form.submit();
}
});
Główne różnice między tymi dwoma wtyczkami to atrybuty używane w każdym podejściu.
Walidacja jQuery
Po prostu użyj następujących atrybutów:
- Ustaw wymagany w razie potrzeby
- Ustaw typ dla prawidłowego formatowania (e-mail itp.)
- Ustaw inne atrybuty, takie jak rozmiar (minimalna długość itp.)
Oto formularz ...
<form id="commentForm">
<label for="form-name">Name (required, at least 2 characters)</label>
<input id="form-name" type="text" name="form-name" class="form-control" minlength="2" required>
<input type="submit" value="Submit">
</form>
jQuery Validation Unobtrusive
Potrzebne są następujące atrybuty danych:
- data-msg-required = "To jest wymagane."
- data-rule-required = "prawda / fałsz"
Oto formularz ...
<form id="commentForm">
<label for="form-x-name">Name (required, at least 2 characters)</label>
<input id="form-x-name" type="text" name="name" minlength="2" class="form-control" data-msg-required="Name is required." data-rule-required="true">
<input type="submit" value="Submit">
</form>
Na podstawie jednego z tych przykładów, jeśli wymagane pola formularza zostały wypełnione i spełniają dodatkowe kryteria atrybutów, pojawi się komunikat informujący, że wszystkie pola formularza zostały sprawdzone. W przeciwnym razie w pobliżu obraźliwych pól formularza pojawi się tekst wskazujący na błąd.
Referencje: - jQuery Validation: https://jqueryvalidation.org/documentation/