Edge浏览器自动填充Bug:覆盖表单默认值且无视标准属性
Edge浏览器自动填充无视标准属性的严重问题
我实在搞不懂,为什么关于这个问题的讨论这么少?也许是因为用Edge的人不多?但这个问题真的太严重了。
举个例子,下面这段HTML代码:
<input type="text" name="first_name" value="Rick">
在管理员编辑用户的场景里用这个表单,如果Edge浏览器配置了已存储的地址信息,输入框先是显示默认值"Rick",瞬间就会被Edge替换成用户存储地址里的默认名字,同时字段背景变成浅蓝色。
这会引发大问题:管理员用Edge编辑其他用户信息时,如果没注意到这个情况,很可能不小心把所有编辑用户的个人数据都替换成自己的信息。
更离谱的是,Edge根本不遵循标准规范,既不支持autocomplete="off",连通用的替代方案autocomplete="new-password"也无视——说实话,需要这种替代方案本身就不合理。
今天我还发现autocomplete="new-password"完全没用:有客户反馈编辑用户时,系统擅自修改了用户密码。编辑用户表单的新密码和确认密码字段都加了autocomplete="new-password"属性,但在Edge里打开表单时,站点保存的密码还是自动填充到这些字段里了。
目前我用的临时解决方案是给密码字段设置autocomplete="<?= time() ?>-new-password",通过每次生成唯一的autocomplete值来"欺骗"Edge,让它正常工作。
这种情况怎么能接受?为什么相关讨论这么少?
我已经通过Edge内部反馈渠道上报了这个问题,但还是想公开这件事,至少留个记录。
内容的提问来源于stack exchange,提问作者Rick Kukiela
相关产品推荐
相关产品推荐

