我有一個現有的asp.net mvc web應用程序,我想停止瀏覽器從下次自動記住密碼。我可以這樣做,而不需要更改密碼上的輸入autocomplete =「off」,而我可以看到這應該解決未來的問題,任何已經完成此操作的人可能仍然可以在密碼緩存時登錄。ASP.Net MVC - 停止自動完成密碼
1
A
回答
1
確實autocomplete="off"
會做的伎倆。你會看到它被用在這裏左右爲好(右上):
@Html.TextBoxFor(model => model.Input, new { autocomplete="off" })
您也可以將所有的人都在一次:
<input style="display: inline-block; width: 188px; max-width: 188px;" name="q" placeholder="search" value="" tabindex="1" autocomplete="off" maxlength="240" type="text">
您可以用剃刀將它添加到您的輸入使用jQuery:
$(document).ready(function() {
$("input:text, form").attr("autocomplete", "off");
})
對於緩存部分,看看從"How to Turn Off Form Autocompletion" (MDN)此摘錄(整個文檔值得一讀):
這裏設置
autocomplete="off"
有兩個作用:
- 停止瀏覽器保存現場數據後自動完成類似的形式,雖然通過瀏覽器有所不同試探。
- 它在會話歷史記錄中停止瀏覽器緩存表單數據。表單數據緩存在會話歷史記錄中時,用戶填寫的用戶填寫的信息將在用戶提交表單後可見,並且 單擊後退按鈕返回到原始表單頁面。
在某些情況下,即使autocomplete屬性設置爲off,瀏覽器也會不斷提示自動填充值 。對於開發者來說,這種意想不到的行爲可能會令人費解。訣竅真正 迫使沒有完成是一個隨機字符串分配給屬性 像這樣:
autocomplete="nope"
由於這個隨機值不是一個有效的,瀏覽器會放棄。
您還應該檢查此行爲在所有主流瀏覽器之間是否一致(具體取決於您所支持的瀏覽器支持情況)。
更新:邁克爾·劉在評論中指出,「現代瀏覽器忽略密碼字段autocomplete屬性」,在這種情況下,我不知道一個合法的解決方案。
你可以嘗試把password
類型的附加input
場您的實際一個頂部,並將其設置爲隱藏,瀏覽器應該嘗試自動完成,與其:
<!-- before your actual password field -->
<input style="display: none;" type="password" name="pwdplaceholder"/>
...然而搞亂瀏覽器行爲不是最佳實踐。
還可以看看another SO question(由Michael Liu在評論中分享)。
相關問題
- 1. JQuery自動完成+ Asp.net MVC
- 2. ASP.NET MVC 3自動完成
- 3. jQueryUI的自動完成射擊停止
- 4. Gzip在codeigniter中停止自動完成
- 5. Eclipse停止自動完成python
- 6. 在jqGrid中停止自動完成
- 7. ASP.NET MVC自動完成位置?
- 8. asp.net mvc(剃鬚刀)的自動完成
- 9. 使用JSON自動完成ASP.NET MVC
- 10. ASP.NET MVC jQuery自動完成HtmlHelper
- 11. 多列自動完成的ASP.Net,MVC
- 12. ASP.NET MVC 4自動完成不工作
- 13. ASP.NET MVC 5 DropDownListFor自動完成
- 14. asp.net MVC自動完成與Html.TextBoxFor
- 15. ASP.net MVC自動完成錯誤?
- 16. 自動完成的密碼問題
- 17. Eclipse代碼完成自動停用
- 18. 如何停止重寫jQuery自動完成的Firefox自動完成?
- 19. 觸發事件,當自動完成完成密碼輸入時
- 20. 在瀏覽器中記住密碼和自動完成密碼
- 21. MVC - Bootstrap自動完成Typeahead
- 22. MVC中的自動完成
- 23. 停止CruiseControl.NET自動生成
- 24. Javascript阻止自動完成
- 25. asp.NET jqueryUI自動完成
- 26. JQUERY自動完成和asp.NET
- 27. Telerik ASP.NET,自動完成RadTextbox
- 28. jQuery自動完成和ASP.NET
- 29. ASP.NET自動完成DropDownList
- 30. PostgreSQL的自動完成 - ASP.NET
這實際上回答了這個問題嗎?來自OP:「我可以看到這應該解決未來的問題,任何已經完成此操作的人可能仍然可以在密碼緩存時登錄。」 –
現代瀏覽器在密碼字段上忽略'autocomplete =「off」'屬性。 –
@MichaelLiu不是'autocomplete =「nope」'每個上面的摘錄應該達到什麼? – trashr0x