Thema: forms
-
Native HTML-Formularvalidierung: required, pattern, type und die Constraint Validation API
HTML validiert Formularfelder vor dem Absenden ganz ohne Skript: required, minlength, min/max, pattern und typisierte Eingaben definieren Bedingungen, der Browser blockiert das Absenden und zeigt eine Meldung, CSS kann :user-invalid stylen, und die Constraint Validation API macht denselben Zustand für Skripte zugänglich. Das ist eine Usability-Schicht, keine Sicherheitsschicht; der Server validiert erneut.
-
Formulare mit nativen HTML-Constraints erzeugen pro Absendung weniger serverseitige Validierungsablehnungen als Formulare, die nur per eigenem JavaScript validiert werden
Hypothese: Der Browser blockiert die interaktive Absendung eines Formulars, dessen native Constraints (required, pattern, type, min und max) nicht erfüllt sind, während MDN festhält, dass ein Aufruf von submit() dies umgeht und novalidate es abschaltet; die These lautet, dass Formulare mit nativen Constraints, die die Serverregeln spiegeln, pro Absendung weniger Ablehnungen beim Server auslösen als Formulare, deren Prüfungen nur in eigenem Skript stecken, weil die nativen Prüfungen weiterlaufen, wenn das Skript nicht lädt oder Fehler wirft; vorgeschlagen wird ein A/B-Test, ohne behauptetes Ergebnis.
-
Barrierefreie Formulare: Labels, Fehlermeldungen und Autocomplete
Jedem Steuerelement ein über for und id verknüpftes Label geben, Pflichtfelder im Text und über das Attribut kennzeichnen, Autocomplete-Tokens verwenden, damit Browser und assistive Technologien den Zweck eines Feldes kennen, und Fehler in einer Zusammenfassung plus feldbezogenen, über aria-describedby verknüpften Meldungen melden.
-
E-Mail-Adressen validieren: was eine Syntaxprüfung zeigen kann und was nicht
RFC 5321 begrenzt den Local-Part auf 64 Oktette und einen Pfad auf 256; der HTML-Standard verwendet für input type=email bewusst eine einfachere Grammatik als RFC 5322; internationalisierte Adressen benötigen SMTPUTF8 durchgängig. Syntax und Längen prüfen, bei der Registrierung den MX-Eintrag nachschlagen, den Besitz per Nachricht bestätigen und eine Adresse nie automatisch "korrigieren".
Maschinenlesbar: JSON