javascript - 有没有办法在现代浏览器(如 Chrome 42)中编写禁用保存密码的方法?

标签 javascript jquery html google-chrome autocomplete

我有一个 asp.net/MVC/Razor 项目,客户要求不保存用户名和密码。我发现多个网站都说 autocomplete = "off"或 autoCompleteType = "disable"应该可以工作,但它们在 Chrome 42 中对我不起作用。我见过一些网站说自动完成功能在 HTML5 中并且应该可以工作,但是我还看到一些网站说现代浏览器不支持它。我的问题是:

  1. 有人能给我一个明确的答案吗?是否有办法阻止在现代浏览器中保存密码?如果有的话,该怎么做?

  2. 如果这无法完成,有人可以向我指出一个网站,该网站解释说这在现代浏览器中无法完成吗?我不想要 stackoverflow 评论或留言板讨论;我需要一个明确、清晰、专业的解释,以便向客户展示为什么不能以简单的方式完成此操作。

以下是几个似乎彼此不一致的网站:

“IE11 在表单和元素级别放弃了对输入类型=密码的 autocomplete=off 的支持。” How to disable autocomplete for a HTML password field in IE11?

“HTML5 有一个自动完成属性,可以在字段中将其指定为打开或关闭。” Autocomplete text input for HTML5?

这是我与自动完成标记一起使用的代码:

形式为:

@using (Html.BeginForm("Login", "Admin", FormMethod.Post, new { @autocomplete = "off", @autoCompleteType = "disable"}))

在输入标签中:

@Html.TextBoxFor(m => m.UserName, new { @class = "span12", @autocomplete = "off", @autoCompleteType = "disable" })
@Html.PasswordFor(m => m.Password, new { @class = "span12", @autocomplete = "off", @autoCompleteType = "disable" })

我还尝试通过 javascript 启用自动完成:

$("input:text,form").attr("autocomplete", "off")

还尝试将文本框设置为空白,但浏览器仍然会填充值:

$("#UserName").val("");
$("#Password").val("");

最佳答案

感谢@DCoder 找到了这个:

“2014 年 4 月 8 日星期二...Chrome 现在将在 autocomplete=off 存在的情况下提供记住和填写密码字段的功能。这本着选区优先的精神为用户提供了更多权力,并鼓励使用Chrome 密码管理器的功能,以便用户可以拥有更复杂的密码。”

http://googlechromereleases.blogspot.com/2014/04/stable-channel-update.html

如果有人发现任何其他官方声明,请在此处发布。谢谢!

关于javascript - 有没有办法在现代浏览器(如 Chrome 42)中编写禁用保存密码的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30484347/

相关文章:

javascript - 未捕获的类型错误 : undefined is not a function when readind map in javascript

html - 如何为表格单元格添加固定高度?

html - Bootstrap 3 中列内容的垂直对齐

javascript - 根据所选选项过滤 Angular

html - 如何设置 div 以随着文本更改的过渡而扩展

javascript - Blogger:仅在特定作者的帖子中显示小部件

java - 使用 Java 示例作为基础在 Javascript 中验证电话号码

javascript - 如何在 Ace 编辑器中启用实时语法检查

jQuery $(this) 与变量

javascript - 从列表中删除对象