Asp.net mvc 自动完成=关闭,不在mvc 5中工作

Asp.net mvc 自动完成=关闭,不在mvc 5中工作,asp.net-mvc,autocomplete,asp.net-mvc-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" }) 它可以生成这样的HTML <input type="text"

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

@Html.TextBoxFor(
model => model.UserName, 
new { @class = "form-control", autocomplete = "off" })
@Html.ValidationMessageFor(m => m.UserName, "", new { @class = "text-danger" })
它可以生成这样的HTML

<input type="text" value="" name="UserName" id="UserName" data-val-required="User name is required." data-val="true" class="form-control" autocomplete="off">
参考资料取自以下网站:


我仍然想知道我的代码出了什么问题?您的建议对我来说意义重大。

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

访问

根据巴拉特的回答,事实上,问题不在于自动完成, 问题来自浏览器保存的登录

但我们可以克服这一问题,而无需清除浏览器保存的密码。 根据我的意图,所有执行类似任务的浏览器(密码前的字段假定为用户名,并且使用最后登录的数据)将自动粘贴,即使我们执行
autocomplete=“off”


解决方案是使密码字段
自动完成=“new password”
,但这仅在HTML5或以上支持的浏览器中有效…

它在MVC 5中工作,以自动完成关闭

@Html.TextBoxFor(model=>model.UserName,
新的{@placeholder=“UserName”、@id=“txtUserName”、@autocomplete=“new user”})
@Html.PasswordFor(model=>model.Password,
新{@placeholder=“Password”、@id=“txtPassword”、@autocomplete=“new Password”})
 ModelState.Remove("UserName");