簡體   English   中英

如何禁用 chrome / jquery 的自動完成和自動填充

[英]How to disable autocomplete and autofill for chrome / jquery

我想禁用 Chrome 自動完成和 Chrome 自動填充。

我正在使用JQuery UI來自動完成輸入字段。 我的jquery-ui 自動完成工作正常,但是 chrome 瀏覽器在我的頂部顯示它自己的自動填充,這使得用戶很難 select 正確的下拉項目。

我正在使用autocomplete="off"這似乎禁用了 chrome 的自動完成功能,但顯示了自動填充選項

我嘗試了以下方法:

  • autocomplete="chrome-off" autocomplete="false" autocomplete="disabled"

這些屬性值(或任何無效的屬性值)似乎禁用了 *autofill 但確實啟用了自動完成

重要提示:我不能使用隨機名稱屬性,因為我正在為我自己的 jquery-ui 自動完成執行 ajax 請求

自動完成=“關閉”

不再起作用了。 從 2019 年開始唯一有效的是

自動完成=“新密碼”

我終於通過結合幾個不同的答案找到了解決方案。

步驟1

為了解決自動完成問題,您可以添加一個虛擬的不可見輸入字段,如此所述。 所以你的 html 應該是這樣的:

<input id="dummy_location" type="search" name="dummy_location" style='display: none;'>
<input id="location" type="search" name="location">

這將導致 chrome 自動填充彈出窗口

第2步

要禁用自動填充彈出窗口,我們需要像這樣為自動完成屬性添加一個無效值。

$("#fromcity_ac").attr({
     autocomplete: "chrome-off",
});

你可以在這里停下來

Chrome 可以正常工作,但是,自動完成問題會在其他瀏覽器上彈出,例如 firefox。 要解決此問題,您可以通過檢查正在使用的瀏覽器並為 autocomplete 屬性設置適當的值來編輯步驟 2

 var isChromium = window.chrome; var winNav = window.navigator; var vendorName = winNav.vendor; var isOpera = typeof window.opr;== "undefined". var isIEedge = winNav.userAgent;indexOf("Edge") > -1. var isIOSChrome = winNav.userAgent;match("CriOS"); // Autocomplete default value var autocomplete = "chrome-off". if (isIOSChrome) { // is Google Chrome on IOS } else if ( isChromium;== null && typeof isChromium !== "undefined" && vendorName === "Google Inc." && isOpera === false && isIEedge === false ) { // Is google chrome } else { // Is firefox autocomplete = "off"; }

autocomplete="off"autocomplete="random-value" 這是目前的臨時修復。

試試這個,這適用於 chrome

autocomplete="chrome-off"

截至 2022 年初,這似乎有效:

autocapitalize="off" autocomplete="off" autocorrect="off" autofocus="" role="combobox" spellcheck="false"

這是谷歌主頁搜索框上使用的技術。

我可以確認 Ryan 的回答“截至 2022 年初,這似乎有效”對我有用(謝謝,Ryan)。 我正在使用 Kendo UI AutoComplete 小部件,直到現在 (2022-02-02),這是唯一有效的方法,這個問題困擾了我多年。

無法投票,因為沒有積分:-/

我明白谷歌希望為最終用戶提供一個好的和有用的用戶體驗,但作為開發人員,我們需要能夠說有時,這不是我們想要的,至少在我們的拙見中是這樣。 一個很好的例子是當谷歌瀏覽器中的自動填充隱藏了自動完成選項時。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM