Ich habe ein Formular, das optional über Facebook Connect vorab ausgefüllt werden kann. Sobald ein Benutzer eine Verbindung herstellt, werden sein Name und seine E-Mail-Adresse automatisch ausgefüllt. Das Problem besteht darin, dass die Remote-Validierung nicht ausgelöst wird, um zu überprüfen, ob die E-Mail bereits vorhanden ist.
Gibt es eine Möglichkeit, die Validierung nur für dieses Feld aufzurufen? Etwas wie:
$('#email-field-only').validate()
wäre eine idee. Durchsuchte die Dokumente ohne Glück.
$('input[name=email-field-only]').valid();
auchVerwendung
Validator.element()
:Hier ist das in der API gezeigte Beispiel:
.valid()
validiert das gesamte Formular, wie andere darauf hingewiesen haben. Die API sagt:quelle
Aus irgendeinem Grund funktionieren einige der anderen Methoden erst, wenn das Feld fokussiert / verwischt / geändert wurde oder ein Submit versucht wurde ... das funktioniert bei mir.
Musste das Skript jquery.validate durchsuchen, um es zu finden ...
quelle
.valid()
am Ende hinzugefügt, so dass es für mich aussah.$("#Form").data('validator').element('input[name=__Suburb]').valid();
Ich glaube, wenn Sie es nicht nach ID auswählen, könnte dies erforderlich sein..valid()
am Ende des Ausdrucks stehen. Die.element()
Funktion gibt ein boolesches Ergebnis zurück ( docs | src ). Wenn ich versuche, .valid () aufzurufen, erhalte ich die Fehlermeldung: "Ungefangener Typfehler:$(...).data(...).element(...).valid
ist keine Funktion"quelle
Wenn Sie Ihre Validierung einrichten, sollten Sie das Validatorobjekt speichern. Hiermit können Sie einzelne Felder validieren.
- Kreuz mit dieser ähnlichen Frage gepostet
quelle
Wenn Sie einzelne Formularfelder validieren möchten, aber nicht möchten, dass die Benutzeroberfläche ausgelöst wird und Validierungsfehler angezeigt werden, können Sie die Validator.check () -Methode verwenden, die zurückgibt, wenn ein bestimmtes Feld die Validierung besteht oder nicht.
Hier ist ein Beispiel
quelle
Falls Sie die Validierung für "einige Elemente" (nicht alle Elemente) in Ihrem Formular durchführen möchten. Sie können diese Methode verwenden:
Hoffe es hilft allen :)
BEARBEITET
quelle
quelle