autocomplete=off 在 mvc 5 中不起作用

Isw*_*war 5 asp.net-mvc autocomplete asp.net-mvc-5

我试图不在浏览器中生成自动完成,因为我正在尝试这个

@Html.TextBoxFor(
model => model.UserName, 
new { @class = "form-control", autocomplete = "off" })
@Html.ValidationMessageFor(m => m.UserName, "", new { @class = "text-danger" })
Run Code Online (Sandbox Code Playgroud)

像这样生成 HTML

<input type="text" value="" name="UserName" id="UserName" data-val-required="User name is required." data-val="true" class="form-control" autocomplete="off">
Run Code Online (Sandbox Code Playgroud)

在其他视图中,我使用了相同的视图,并且工作正常。但在登录视图中autocomplete="off"不起作用。为此,我在控制器中有这样清晰的模型状态

 ModelState.Remove("UserName");
Run Code Online (Sandbox Code Playgroud)

参考来自以下网站

我仍然想知道我的代码有什么问题?你的建议对我很重要。

小智 7

实际上,根据 Bharat 的回答,问题不在于自动完成,问题来自浏览器保存的登录信息。

但我们可以克服这个问题,而无需清除浏览器保存的密码。根据我的意图,所有执行类似职责的浏览器都会将密码前面的字段假定为用户名,并且使用最后登录的数据,即使我们这样做,也会自动粘贴autocomplete="off"

解决方案是设置密码字段autocomplete="new-password",但这仅适用于 HTML5 或以上支持的浏览器...


Bha*_*rat 0

该问题来自浏览器保存的登录信息。
当这些问题出现在我身边时,我从浏览器中删除了保存的登录信息,它解决了我的问题。

访问https://support.mozilla.org/en-US/questions/962690
https://support.google.com/chrome/answer/95582?hl=en