有没有办法在现代浏览器(如Chrome 42)中禁用保存密码?

时间:2015-05-27 13:44:54

标签: javascript jquery html5 google-chrome autocomplete

我有一个asp.net/MVC/Razor项目,客户端请求不保存用户名和密码。我发现有多个网站说自动完成="关闭"或autoCompleteType ="禁用"应该可以工作,但是他们不会在Chrome 42中为我工作。我已经看过网站上说自动填充是HTML5并且应该可以使用,但是我也看到网站说它不受支持现代浏览器。我的问题是:

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

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

  3. 以下几个网站似乎彼此不同意:

    " 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("");
    

1 个答案:

答案 0 :(得分:2)

感谢@DCoder找到这个:

" 2014年4月8日星期二... Chrome现在可以提供在autocomplete = off的情况下记住和填写密码字段。这样可以优先考虑选区的优势,为用户提供更多权力,并鼓励使用Chrome密码管理器,以便用户可以拥有更复杂的密码。"

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

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