Ich schrieb einen Code, um ein Formular auf Client-Seite zu validieren. Da ich alle Fehlermeldungen gebunden habe, ist der letzte Fall, der in Betracht gezogen wird, wenn der Benutzer nicht einmal eine erforderliche Eingabe getroffen hat, leer gelassen.Überprüfen Sie, ob eine Eingabe mit Klasse in einem Formular leer ist
Wenn alle Eingaben in Form waren erforderlich ich so etwas wie
verwendet haben könnte$('#subButton').on('click', function(e) {
if (!$('#formName').val()) {
e.preventDefault();
alert("Fill all the required fields");
});
Aber da es in meinen Formulareingaben erforderlich sind (mit class="req"
) und nicht Eingaben erforderlich, würde ich gerne wissen, ob Es gibt eine Methode, um die Prüfung nur über die .req
Eingänge durchzuführen. Etwas wie:
$('#subButton').on('click', function(e) {
if (!$('#formName.req').val()) {
e.preventDefault();
alert("Fill all the required fields");
}
});
Mit anderen Worten würde Ich mag die gleiche Prüfung durchzuführen, die der up-to-date-Browser tun, wenn die HTML required
Option angegeben wird, nur um sicher zu sein, dass, wenn der Browser a Bit alt und liest nicht die required
Option, verhindert jQuery das Formular gesendet werden.
Es gibt sehr gute jQuery Formularvalidierung Plugins. Ich würde vorschlagen, einen von diesen zu verwenden. Hält Sie davon ab, selbst viel Code zu schreiben. https://jqueryvalidation.org/ – Seb
Es ist keine gute Idee, mit dem 'click' Ereignis eines' submit' Knopfes auf einem 'Formular' zu arbeiten, im Gegensatz zum' submit' Ereignis des 'form' das ausgelöst wird durch den 'Klick' eines' submit'-Buttons. –
@Seb Sicher, ich überprüfe das und das andere berühmte, aber ich brauchte mehr Zeit, um herauszufinden, wie man sie in meine Seite integriert (sie haben ein schreckliches _wiki_ meiner Meinung nach), als die ganze Validierung selbst zu schreiben. Ich werde sie wahrscheinlich noch einmal versuchen, für komplexere Validierungen. Danke für den Tipp! – Brigo