C6.28.2Autofill remains editable设计研究

自动填充的内容在提交前应保持可编辑,不能强制锁定

别名: 填充后可改 · 锁定自动填充 · 只读档案字段

概念解释

填充只是把档案里的字符串写进格子,用户仍可能要改一个字母、换一条地址、或清空误填。提交前把格子设成只读、禁用、或用无法聚焦的伪文本展示,等于强迫这份档案当最终值。可编辑是填充的收尾条件,不是额外功能。锁住常见于“用社交账号一键登录后资料不可改”或自定义组件把值画成标签。

机制

浏览器填完后字段仍是普通 input,可聚焦、可删除。站点若在 change 上立刻把 readOnly 打开,或用填充成功作为“这一格已经权威”,就把启发式错误冻进提交包。用户对档案的信任是有条件的:搬家后的旧地址、公司邮箱与私人邮箱、临时用的收货名,都需要当场改。键盘和输入法必须还能进入这些格子,否则填充成了唯一路径。无障碍上,只读字段会被读成“不可编辑”,屏幕阅读器用户甚至不知道能改。

怎么研究

填充后尝试修改每一格,记录是否可聚焦、改完是否被脚本改回、提交是否带走修改。对比原生 input 与自绘只读行。请人使用一份故意过期的档案,看他们能否在提交前修正。手机上还要测系统填充条写入后,字段能否唤起键盘。不要只测“填充是否发生”。

边界

支付机构要求的某些只展示卡号(只显示末四位)本来就不是让用户改主账号,那是脱敏显示,应与可编辑的 CVV、有效期分开。只读的订单确认页发生在用户已经提交之后,不适用。法律身份字段(证件号)在某些流程里禁止改,但要明确标注原因,并提供“这不是我”的退出,而不是静默锁定。

怎么落地

  • 填充后保持 input 可聚焦、可全选、可清空;不要用 readOnly 当作防篡改。
  • 自绘方案至少提供“编辑”把标签变回字段。
  • 过期或可疑的填充在提交前用轻量提示,而不是锁死。
  • 验证:用错误的电话填进表单,改成正确号码后提交,服务端收到的必须是改正后的值;改不了或改完被改回即失败。

延伸

  • 同组C6.28.1 自动填充依赖字段的语义标注,标注缺失或错误会填错内容 · C6.28.3 自动填充可能跨域填入不匹配的历史数据,带来隐私与出错风险 · C6.28.4 自动填充与输入校验的时机需要协调,避免填充后触发即时报错
  • 相邻C6.13 文本选择与光标定位 · C6.15 剪贴板
  • 站内检索editable autofill · readonly fields · profile override

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/C6.28.2