浏览器地址自动填充不会填充“状态”SelectField 元素

Posted

技术标签:

【中文标题】浏览器地址自动填充不会填充“状态”SelectField 元素【英文标题】:Browser address autofill does not fill a "state" SelectField element 【发布时间】:2017-03-06 02:03:55 【问题描述】:

我有一个地址表单,其中“状态”两个字母代码,我使用 material-ui SelectField。 问题是当浏览器提出自动填充地址时,此 SelectField 不会使用正确的状态代码自动填充。 所有其他文本字段(地址、城市、邮政编码)自动填充正确。 我已经用 Chrome/Firefox/IE/Edge/Safari 对此进行了测试。

你可以在这里测试我的代码:https://gmacciocca.github.io/coffee-with-congress

【问题讨论】:

【参考方案1】:

这是因为SelectField<div>s 等组成,而不是使用原生的<select> 表单元素。

理论上可以使用隐藏的阴影元素来捕获输入,但是作为安全预防措施,某些浏览器不会在自动填充时触发 DOM 事件,因此无法确定没有连续提供的值投票。

这与我们在自动填充时文本字段标签没有动画时遇到的问题相同。

【讨论】:

以上是关于浏览器地址自动填充不会填充“状态”SelectField 元素的主要内容,如果未能解决你的问题,请参考以下文章

HTML 表单名称/地址字段和自动填充

谷歌浏览器自动填充功能怎么用

启用浏览器的表单自动填充

如何用js阻止浏览器的自动填充

哪个高手能说一下chrome的“表单填充”有啥用

GWT 和自动填充