Chrome自动将用户名填充为随机文本输入

Tom*_*gan 16 asp.net google-chrome autofill

这是在使用Chrome版本72.0.3626.109(正式版本)(64位)的asp.net网络表单应用程序上发生的。

该站点受密码保护。用户使用用户名和密码登录。成功登录后,用户将被重定向到“贷款搜索”页面。贷款搜索页面包含少量文本输入。

问题是Chrome会将我的用户名自动填充到其中一个文本输入中(见图片)。“ tregan”是我在登录页面中输入的用户名。

在此处输入图片说明

Chrome始终会选择此特定的文本输入来自动填充用户名(“联系邮件地址”)。这是我本人以及我们网站的其他数十名用户所发生的。

您知道Chrome为什么要执行此自动填充功能吗,有什么我可以防止的方法吗?我清除了Chrome自动填充缓存,但这并不能解决问题。

Tom*_*gan 8

答案是将不可见的文本输入添加到称为“用户名”的asp.net表单中。

几年前,我们在输入不同的内容时遇到了同样的问题。答案是添加一个不可见的类型为“ password”的输入,如该SO答案中所述,向下滚动到短语“这是如此简单和棘手...”:

禁用Chrome自动填充

下面是完整的修复程序,我在我们网站的主页中的form元素内添加了这两个元素。根据下面的@Jeff_Mergler的评论,将这些输入放在表单标签的顶部:

<input type="text" id="username" style="width:0;height:0;visibility:hidden;position:absolute;left:0;top:0" />
<input type="password" style="width:0;height:0;visibility:hidden;position:absolute;left:0;top:0" />
Run Code Online (Sandbox Code Playgroud)

  • 作品!注意:仅当我将上方的元素放在form元素的最顶部之前,才起作用。将它们放在底部时,它无法正常工作,因此请确保将它们放在打开表单标签的正下方。`&lt;form ...&gt; &lt;input type =“ text” id =“用户名” style =“宽度:0;高度:0;可见性:隐藏;位置:绝对;左侧:0;顶部:0” /&gt; &lt;输入type =“ password” style =“宽度:0;高度:0;可见性:隐藏;位置:绝对;左侧:0;顶部:0” /&gt;` (2认同)