html - 当页面上有密码字段而没有电子邮件字段时,浏览器凭据自动完成问题
问题描述
在 laravel jetstream 标准 user-profile-managing 脚手架中,有一个页面 http://127.0.0.1:8000/user/profile可以在没有单独电子邮件字段的情况下找到 type="password" 的输入字段。这样做是为了让用户更改密码。
如果有任何其他字段带有 type="text" 或 type="search" ,它将自动填写如下电子邮件:
但是当我添加额外的输入字段 type="email" (当然这个字段可以隐藏)它看起来通常应该看起来像:
仅当浏览器“记住”密码时才会出现此问题。
那么问题是可以添加额外的“电子邮件”字段来欺骗浏览器吗?
还有其他更好的方法吗?
Update1:隐藏字段不起作用。只有当它可见时...
更新 2:字段可以是零宽度,而不是隐藏。
Update3:另一件有效的事情 - 将搜索字段包装在表单标签中。
解决方案
将搜索字段包装在它自己的表单标签中会有所帮助。
此外,将其他表单的内容包装在其自己的表单标签中也会有所帮助。否则,浏览器会认为整个页面是一个表单,并会尝试自动填充。
最好的做法是用不同的 ID/名称将每个表单包装在自己的表单标签中,以帮助浏览器了解它们中的每一个都是不同的并且不相关。
推荐阅读
- laravel - Laravel - 如何动态实现我的 API
- python - 检查值按行计数,它小于另一个列值
- github - 如何让 GitHub 返回实际文件(未显示在 Git 查看器中)?
- npm - 尝试 npm install material-ui 时出现大量错误
- reporting-services - 在 SSRS 的 where 子句中使用参数
- c++ - 如何将 std::function 作为参数传递给 gmock 中的模拟方法?
- snakemake - snakemake 执行作业的条件是什么?
- github - 在文档中的任何位置转换 github 页面上的字符串
- java - 如何为图像 src 使用 pattern.compile
- javascript - 在javascript中拆分对象内的值