html - 真正的 2019 禁用 chrome 自动填充的解决方案

标签 html asp.net-mvc forms

我知道这个问题有很多答案。我查看了所有禁用谷歌自动完成的解决方案(建议的下拉列表),比如使用 autocomplete=0ff 或 autocomplete=false,但没有解决问题。 我创建了一个 MVC 应用程序,其中包含带有下拉列表和 HTML EditorFor 的 View 。

一种向 HTML 编辑器添加名称的解决方案有助于删除自动完成,但是由于我更改了 HTML EditorFor 的名称,我在回传值时遇到了问题。

<div class="col-md-10">
     @Html.EditorFor(model => model.Address, new {htmlAttributes = new { @class = "form-control", @id = "show_address", Name = Guid.NewGuid().ToString(), autocomplete = "noped" } })
</div>

有人有 2019 年禁用谷歌自动完成的解决方案吗?

更新:

我尝试使用 html.textboxfor(如下面第一个解决方案中给出的那样),但是我意识到 autocomplete=off 仅在 View 中存在另一个 textboxfor 时才有效。 如果在同一个 View 中有多个文本框,对任何一个 Html 文本框使用 autocomplete=off 将无法禁用自动完成功能!有人可以帮忙吗?

最佳答案

EditorFor 有它自己的一些缺点,它在某些情况下不起作用,使用 TextBoxFor 代替 EditorFor 的更好方法。此外,它不影响 Postback 值。(更多详细信息 check here )

@Html.TextBoxFor(model => model.Address, new { @class = "form-control",  @id = "show_address", autocomplete = "off" })

更新:查看我更新的演示 DEMO
添加 autocomplete=off 后,仍然有一些浏览器会忽略它们,它们会尝试向您显示一些提示或自动填充。更多信息 check this
在自动完成中添加一些 random_value,以便浏览器认为是关闭的。

@Html.TextBoxFor(model => model.Address1, new { @class = "form-control",  @id = "show_address", autocomplete = "some_random_value" })

关于html - 真正的 2019 禁用 chrome 自动填充的解决方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56723703/

相关文章:

ajax - jQuery 自动完成功能不显示 Ajax 调用返回的数据

forms - HTTP 参数名称中的下划线与破折号

php - 当用户提交登录表单时,数据会发生什么情况?

jquery - 星级 JavaScript 的 CSS 背景样式问题

asp.net-mvc - HTML5 离线 list /功能如何与 ASP.NET MVC 4 配合使用?

html - 响应式 Twitter Bootstrap : <body> and navbar right padding/margin appears when width is < 767/768px

asp.net-mvc - 51Degrees 仅重定向根

如果检测到暴力尝试,PHP 使用 reCAPTCHA

javascript - 使用预制字符串进行文本替换,并使用 javascript 在 html 中使用按钮

javascript - 如何在一段时间后取消图像加载?