[WebKit hat jetzt] HTML Interactive Form Validation

Avatar of Chris Coyier
Chris Coyier am

DigitalOcean bietet Cloud-Produkte für jede Phase Ihrer Reise. Starten Sie mit 200 $ kostenlosem Guthaben!

Chris Dumez

WebKit unterstützte keine interaktive HTML-Formularvalidierung, die bei der Formularübermittlung stattfindet (es sei denn, das Attribut novalidate ist auf dem <form>-Element gesetzt) oder über die reportValidity()-API. Wir freuen uns, Ihnen mitteilen zu können, dass dies nun in WebKit implementiert und in Safari Technology Preview 19 aktiviert ist. Bei der interaktiven Formularvalidierung prüft WebKit nun die Gültigkeit aller Formularsteuerelemente im Formular.

Die Formularvalidierung in Safari war lange Zeit enttäuschend. Sie verhinderte nicht einmal die Übermittlung von Formularen mit ungültigen Daten. Hip hip hurra, dass sich das nun verbessert! Es wird nun die Formularübermittlung verhindern und eine visuelle Fehlermeldung anzeigen.

Ich habe auch gerade erst von reportValidity() gehört. Es ist genau wie checkValidity(), mit dem Unterschied, dass es zusätzlich zum Rückgabewert von true oder false über die Gültigkeit auch die Benutzeroberfläche auslöst.

Wenn mindestens ein Formularsteuerelement eine Einschränkung verletzt, wird WebKit das erste davon fokussieren, in die Ansicht scrollen und in dessen Nähe eine Sprechblase mit einer Nachricht anzeigen, die das Problem erklärt.

Sehen Sie sich den Pen checkValidity vs reportValidity von Chris Coyier (@chriscoyier) auf CodePen an.

Nachdem ich dieses Demo zum Testen erstellt hatte, sah ich, dass Chris Dumez bereits seine eigene Version erstellt hatte.

Ich stelle mir vor, dass dies irgendwann auch auf iOS übertragen wird? Bin mir nicht sicher, wie das funktioniert.

Direkter Link →