Passwort ohne Zugangsdaten speichern-Dialog

Geschrieben von am .

Browser-Hersteller wie die Mozilla-Foundation oder Google wissen oft besser als Webseiten-Anbieter und die Nutzer des Browsers, was gut für diese ist, und setzen sich über deren Wünsche hinweg. Thou shalt have no god beside me oder so.

Ein Beispiel ist das Attribut autocomplete="off" auf Formular-Feldern, das festlegt, dass diese Felder nicht vom Browser vorausgefüllt werden dürfen: Auf Passwort-Feldern ignorieren Firefox und Chrome dieses Attribut.

Möchte man nicht, dass der Browser Login-Daten automatisch ausfüllt, muss man also dafür sorgen, dass dieser die Login-Daten erst gar nicht speichert. Doch auch das ist einfacher gesagt als getan.


Lösungsweg.

Das Skript no-password-save.js kopiert beim Klick auf ein <button> oder <input> vom Typ type="submit" Namen und Inhalt des Passwortfeldes in ein neu geschaffenes type="hidden"-Feld und löscht dann Name und Inhalt des Passwortfeldes. Das Formular enthält so die gleichen Daten wie vor der Manipulation, aber kein Passwort-Feld mit nutzbarem Inhalt mehr. Damit erscheint beim Abschicken auch kein Zugangsdaten speichern-Dialog.

Das Passwort-Feld muss leider bereits beim Klick auf einen Abschick-Knopf versteckt werden. Sauberer wäre das onsubmit-Event, doch hat der Browser da bereits die Feld-Typen, -Namen und -Werte eingefroren.

Für den Fall, dass das Senden des Formulars abgebrochen wird (z.B. durch ein leeres Feld mit required-Attribut), wird das jetzt leere Passwort Feld beim Erhalt des Fokus wieder mit den Daten aus dem Hidden-Field gefüllt, und das Hidden-Field entfernt.


Formular mit unterdrücktem Zugangsdaten speichern-Dialog

Query:

Text:

User:

Password:


Normales Formular

Query:

Text:

User:

Password:


Es gibt diese Seite mit minimalem HTML-Code, außerdem das Komplettpaket no-password-save.zip zum auf dem eigenen Rechner oder Server auspacken und damit herumspielen.