Ich nenne das den Vorschlaghammer-Ansatz, aber er scheint für mich zu funktionieren, wo alle anderen Ansätze, die ich versucht habe, gescheitert sind:
Hinweis: Die input Name- und ID-Attribute sollten nichts enthalten, was dem Browser einen Hinweis auf die Daten geben würde, da diese Lösung sonst nicht funktioniert. Ich benutze zum Beispiel "fa" anstelle von "FullAddress".
Und das folgende Skript beim Seitenaufruf (dieses Skript verwendet JQuery):
$("[data-autocomplete-ninja]").each(function () {
$(this).focus(function () {
$(this).data("ninja-name", $(this).attr("name")).attr("name", "");
}).blur(function () {
$(this).attr("name", $(this).data("ninja-name"));
});
});
Die obige Lösung sollte verhindern, dass der Browser Daten aus anderen Formularen autofillt oder aus vorherigen Sendungen im selben Formular.
Im Grunde genommen entferne ich das Name-Attribut, während das Eingabefeld im Fokus ist. Solange Sie nichts machen, was das Name-Attribut benötigt, während das Element im Fokus ist, wie z.B. Selektoren nach Elementnamen verwenden, sollte diese Lösung harmlos sein.
17 Stimmen
Technisch wurde diese Frage etwa 5 Monate vor der als "Diese Frage hat hier bereits eine Antwort" bezeichneten Frage gestellt. Diese Frage ist das Duplikat, da sie nach dieser gestellt wurde.
0 Stimmen
Ehrlich gesagt, was wenn das der Grund für das Deaktivieren von autocomplete=off ist. Was ist, wenn der Plan ist, sicherzustellen, dass das Web so detailliert und beschrieben ist, dass der Browser, den Sie gerade verwenden, jedes Feld automatisch ausfüllen kann, wie es ihre neueste Version möchte. Wenn das der Fall wäre, müssten wir alle Felder beschreiben - und der Browser würde das automatische Ausfüllen für alle Felder deaktivieren, die außerhalb des Bereichs des Autocomplete-Skripts/Apps liegen... Ich wette darauf, dass dies der Fall ist.
87 Stimmen
7 Jahre und immer noch können wir die automatische Vervollständigung nicht richtig deaktivieren... so eine Schande...
0 Stimmen
@user3071434 und diese Antwort ist nutzlos, weil sie nicht funktioniert.
3 Stimmen
Ich habe hier eine Erklärung gefunden developer.mozilla.org/en-US/docs/Web/Security/…
0 Stimmen
Versuchen Sie github.com/terrylinooo/disableautofill.js
0 Stimmen
Ich hasse Websites, die es meinem Browser nicht erlauben, die automatische Vervollständigung zu verwenden.
2 Stimmen
Siehe bugs.chromium.org/p/chromium/issues/detail?id=370363#c7 Link, der empfiehlt, autocomplete="new-password" zu verwenden.
0 Stimmen
Wollte nicht noch eine weitere "Antwort" zu all dem hinzufügen, deshalb werde ich nur kommentieren, aber nachdem ich so viele Lösungen für unseren Vue.js-App-Suchfilter ausprobiert habe, habe ich mich für dies entschieden, weil Chrome dies zu respektieren scheint:
0 Stimmen
Bis zum 31.12.2022 scheint die Lösung "new-password" in Chromium-basierten Browsern für alle registrierten Formulardaten anpassbar zu sein: Wenn Sie z.B. autocomplete="new-user-street-address-email-password-phone" als Attribut zu Ihrem Formular hinzufügen, werden die entsprechenden Daten nicht automatisch ausgefüllt.