7.5.3 Formulare II: Besondere Überprüfungen
Wie ein Formular auf Vollständigkeit überprüft werden kann, wissen wir nun. Doch ist es oft so, dass bestimmte Formularfelder nicht nur vollständig, sondern auch korrekt ausgefüllt werden müssen. So benötigen Telefonnummern nur Zahlen, und E-Mail-Adressen ein @
-Zeichen.
Ganzzahlige Werte (z. B. Postleitzahlen) prüfen
JavaScript bietet die Funktion isNaN()
, die überprüft, ob ein Wert keine Zahl ist. In Formularen bei Zahlenangaben sollten Sie sicherstellen, dass nur Ziffern verwendet werden und die Länge korrekt ist.
Beispiel: Postleitzahlen überprüfen
Erläuterung:
plz.length !== 5
: Prüft, ob die Postleitzahl genau 5 Zeichen lang ist.isNaN(plz)
: Überprüft, ob die Eingabe keine gültige Zahl ist. Wenn dies der Fall ist, gibt die Funktionfalse
zurück.
Telefonnummern prüfen
Telefonnummern können zusätzlich Zeichen wie +
, -
, (
, )
oder Leerzeichen enthalten. Die Überprüfung soll sicherstellen, dass keine ungültigen Zeichen vorhanden sind.
Beispiel: Telefonnummern überprüfen
E-Mail-Adressen prüfen
Bei der Prüfung von E-Mail-Adressen können Sie nicht auf alle möglichen ungültigen Zeichen prüfen, da es heute eine Vielzahl unterschiedlicher Adressformate gibt. Beschränken Sie sich daher auf die zwingend erforderlichen Zeichen: ein @
-Zeichen und einen Punkt irgendwann danach.
Beispiel: E-Mail-Adressen überprüfen
Komplettes JavaScript-Programm zur Überprüfung
Und nun, wie man es wirklich prüft...
Während das manuelle Schreiben von JavaScript-Validierungen eine gute Übung ist, um die Grundlagen von JavaScript zu verstehen, arbeitet man in der Praxis nicht so. Heutzutage gibt es leistungsfähige Bibliotheken und Frameworks, die diese Aufgaben übernehmen und dabei sicherstellen, dass die Überprüfungen robust, sicher und leicht wartbar sind.
Warum Bibliotheken verwenden?
- Zeitersparnis: Vorbereitete Funktionen und Methoden machen die Arbeit effizienter.
- Fehlerreduktion: Bibliotheken sind von erfahrenen Entwickler:innen geprüft und getestet.
- Komplexe Validierungen: Moderne Bibliotheken unterstützen auch anspruchsvolle Prüfungen wie reguläre Ausdrücke oder mehrsprachige Fehlerausgaben.
- Integration mit Frameworks: Bibliotheken lassen sich leicht in Frameworks wie Angular, React oder Vue.js einbinden.
1. Validator.js
Validator.js ist eine beliebte JavaScript-Bibliothek zur Validierung von Strings. Sie unterstützt eine Vielzahl von Prüfungen, darunter E-Mail, URL, Zahlenformate und mehr.
Mehr Informationen zu Validator.js
2. Yup
Yup ist eine JavaScript-Bibliothek zur Validierung und Schemaerstellung. Sie wird häufig in modernen Frontend-Frameworks wie React verwendet.
3. HTML5-Formularvalidierung
Moderne Browser unterstützen viele Validierungen direkt über HTML5-Attribute. Diese sind einfacher und erfordern kein JavaScript.
Beispiel: HTML5-Validierung
<form>
<label for="email">E-Mail-Adresse:</label>
<input type="email" id="email" name="email" required>
<label for="plz">Postleitzahl:</label>
<input type="text" id="plz" name="plz" pattern="\d{5}"
title="Postleitzahl muss 5 Ziffern enthalten" required>
<button type="submit">Absenden</button>
</form>
type="email"
: Validiert E-Mail-Adressen.pattern
: Erlaubt reguläre Ausdrücke für eigene Prüfungen.required
: Kennzeichnet ein Pflichtfeld.title
: Zeigt eine Fehlermeldung bei ungültigen Eingaben an.