我在几种形式上遇到了chrome自动填充行为的问题.
表单中的字段都有非常常见和准确的名称,例如"email","name"或"password",它们也有autocomplete="off"set.
自动填充标记已成功禁用自动填充行为,其中在您开始输入时会显示值下拉列表,但未更改Chrome自动填充字段的值.
这种行为是可以的,除了chrome正在填充输入错误,例如用电子邮件地址填充电话输入.客户抱怨这一点,因此经过验证可以在多种情况下进行验证,而不是因为我在我的机器上本地完成了某些事情.
我能想到的唯一当前解决方案是动态生成自定义输入名称,然后在后端提取值,但这似乎是一个非常讨厌这个问题的方法.是否有任何标签或怪癖会改变可用于解决此问题的自动填充行为?
我对Google Chrome及其表单自动填充功能存在设计问题.如果Chrome记住某些登录名/密码,则会将背景颜色更改为黄色.
以下是一些截图:

如何删除该背景或只是禁用此自动填充?
我想知道是否有某种特殊标记可以为特定表单启用Chrome自动填充功能.我只发现了有关如何禁用它的问题,但我想知道我是否可以在html代码中添加某种标记,以告诉浏览器"这是地址的输入"或"这是邮政编码字段"正确填写(假设用户激活此功能).
如何判断浏览器是否自动填充了文本框?特别是使用自动填充页面加载的用户名和密码框.
我的第一个问题是在页面加载序列中何时发生这种情况?是在document.ready之前还是之后?
其次,我如何使用逻辑来确定是否发生这种情况?它不是我想阻止这种情况发生,只是挂钩事件.最好是这样的:
if (autoFilled == true) {
} else {
}
Run Code Online (Sandbox Code Playgroud)
如果可能的话,我很乐意看到一个jsfiddle显示你的答案.
可能重复
- 这些问题并没有真正解释触发了什么事件,他们只是不断重新检查文本框(不利于性能!).
我有两种基本形式 - 登录和注册,都在同一页面上.现在,我对登录表单自动填充没有任何问题,但是注册表单自动填充,我不喜欢它.
此外,表单样式获得黄色背景,我无法覆盖,我不想使用内联CSS这样做.我该怎么做才能让它们停止变黄和(可能)自动填充?提前致谢!
您可能已经知道,Safari有一个讨厌的自动填充错误,它填写电子邮件,用户名和密码字段,无论您是否设置autocomplete="off".
这是一个基本形式:
<form action="/" method="post">
<p>
<label>E-mail</label>
<input type="text" name="email" value="" />
</p>
<p>
<label>Password</label>
<input type="password" name="password" value="" />
</p>
</form>
Run Code Online (Sandbox Code Playgroud)
... Safari自动填充页面加载中的那些字段,就像它应该做的那样,做得好!
如果您放置autocomplete="off"字段和/或表单元素,Safari仍会自动填充这些字段:
<form action="/" method="post" autocomplete="off">
<p>
<label>E-mail</label>
<input type="text" name="email" value="" autocomplete="off" />
</p>
<p>
<label>Password</label>
<input type="password" name="password" value="" autocomplete="off" />
</p>
</form>
Run Code Online (Sandbox Code Playgroud)
即便这样也行不通:
<form action="/" method="post" autocomplete="off">
<p>
<label>E-mail</label>
<input type="text" name="secretfield1" value="" autocomplete="off"/>
</p>
<p>
<label>Password</label>
<input type="password" name="secretfield2" value="" autocomplete="off" />
</p>
</form>
Run Code Online (Sandbox Code Playgroud)
...因为Safari会查找这些<label>元素,如果它们包含"电子邮件","密码"等单词并继续自动填充.
Aaaahhhhha!,我想,并尝试了这个:
<form …Run Code Online (Sandbox Code Playgroud) 我们如何在某些<input>页面上禁用Chrome的自动填充功能,以防止在页面加载时自动填充它们?
同时我需要启用自动完成功能,因此用户仍然可以通过单击输入或键入输入来查看建议列表.可以这样做吗?
编辑:如果您认为有必要,或者您觉得它会使您的解决方案更简单,请随意使用普通的Javascript或jQuery.
我有一个带有一些Textbox控件的asp页面.
默认情况下,浏览器会建议先前为每个框输入的值.
我想阻止某些文本框的行为.
有没有办法在所有主流浏览器中可靠地做到这一点?
我试过设定
AutoCompleteType="Disabled"
Run Code Online (Sandbox Code Playgroud)
但这似乎对Firefox没有影响.
这是我试图阻止的行为的图像.

我正在寻找<input name="…">主要浏览器中自动填充功能可识别的表单字段名称()的完整列表.
以下是我发现使用反复试验在Safari中工作的一些内容:
emailEcom_ReceiptTo_Postal_Name_FirstEcom_ReceiptTo_Postal_Name_Lastfirst-namefirstnamelast-namelastnamefull-namebirthdaycompanyjobtitlephonestreetcitycountrystate (用于美国以外的县)postalcodezip但是我找不到标题/敬语前缀的单独字段(它仅包含在全名中).
Opera的Wand识别或多或少相同的名称,但名称除外,这需要Ecom_ReceiptTo_Postal_Name_First和Ecom_ReceiptTo_Postal_Name_Last.
我找不到手机号码的字段.没有办法获得单独的家庭/工作领域.
有人建议扩展autocomplete属性以允许开发人员明确指定这些.
我有一个网站,结帐页面一直很漂亮.
最近,任何使用自动填充填写他的信息的客户都会将他的电子邮件地址转储到公司字段中.我们所做的任何改变都不会影响到这一点.我还可以使用哪些其他工具来深入了解这一点?