【发布时间】:2013-10-21 04:06:31
【问题描述】:
我在 Chrome 的 html5 自动完成功能上苦苦挣扎了一段时间。我有一个这样的表格
<form>
<input name='myname' type='email' autocomplete='on' />
<input type='submit' value='Submit!' onclick='transform_and_post_data();return false;'/>
</form>
使用 Firefox 并返回此表单时,自动完成功能正常。但不适用于 Chrome(至少 26 到 30 版)。我终于发现只有在调用表单的 GET 或 POST 默认操作时才完成表单的自动完成保存(这里被 return false 阻止)。所以我找到了一种解决方法,可以在某些情况下修复它:
<form method='post' action='myaction'>
<input name='myname' type='email' autocomplete='on' />
<input type='submit' value='Submit!' onclick='transform_data();'/>
</form>
只要我不需要通过 XhttpRequest 发布我的表单数据,它就可以很好地工作。有人知道用 XHR 制作 Chrome 自动完成表单的技巧吗?
这是 Chrome 的已知错误吗? (因为 Firefox 按预期工作)
注意:autocomplete='on' 应该没有用,因为它是输入的默认行为
【问题讨论】:
-
我无法添加 cmets,所以我必须添加一个答案,但是为什么需要 id 属性是因为浏览器需要知道您实际尝试输入的字段,而无需一个 id,它不知道应该预填充什么。
标签: html forms google-chrome input autocomplete