浏览器如何选择将哪个字段保存为“用户名”?

cam*_*oon 3 passwords autocomplete

这可能非常简单,但我想知道提供“记住密码”功能的浏览器如何选择要保存的“用户名”?

我正在使用一些 asp.net,它会吐出通常难以理解的 id/name 值,并且浏览器会记住注册表单的“邮政编码”字段作为用户名,而不是我们希望使用的电子邮件地址。

浏览器是否正在寻找特定的“用户名”字段名称/ID?
如果没有“用户名”,那么接下来它会寻找什么?
我们可以指定使用哪个字段吗?

Jak*_*rek 6

HTML 没有为网络作者提供任何支持密码管理机制的方法。浏览器基本上必须猜测哪些字段保存用户名和密码。由于“密码”输入类型,后者更容易一些,但不是解决方案本身,因为该输入类型没有语义值,它只是说明用户代理应如何呈现这些字段。

据我所知,浏览器只会查找第一个密码字段,然后假设其前面的字段是用户名。因此,就您而言,您必须确保密码字段严格遵循用户名。

另一个解决方案(我不确定是否可以帮助浏览器做出正确的选择)是通过将自动完成属性设置为关闭来关闭除用户名和密码之外的所有字段的自动完成功能。