能看见输入框,不代表表单可用
请 ChatGPT 生成 HTML 表单时,不要只写“做一个漂亮报名页”。先给出字段、哪些必填、提交时需要什么键,以及如何显示错误。本文只做姓名与邮箱两个自拟字段,不涉及实际报名服务。视觉占位文本 placeholder 不能取代明确的字段名称;用户开始输入后,占位文本就消失。

两个字段分别承担什么
姓名可以写成 <label for="person-name">姓名(必填)</label> 与 <input id="person-name" name="name" autocomplete="name" required>。for 要与同一控件的 id 一致,点击标签便可定位输入框,也让辅助技术识别字段。name 是提交数据的键;只写 id 而没有 name,后端可能得不到该字段。邮箱用另一个唯一 id,例如 email,并设置 name="email" type="email" required。必填字样应可见,而不是只靠红色边框传达。
required 能阻止浏览器在字段空白时正常提交,type="email" 也提供基本格式检查;但它们不能证明邮箱属于用户,也不能替代服务器端校验。按钮文字应说清动作,例如“提交报名”,不要只写“确定”。
用键盘和错误状态检查
在浏览器里只用 Tab 依次进入姓名、邮箱、按钮;点击文字标签,确认焦点到了对应输入框;空白提交时检查浏览器是否提示必填。再输入不合格式的邮箱,确认提示出现。测试窄屏时标签不应被遮挡,错误提示应有文字而非只用颜色。
提示词与人工责任
给模型输入字段映射与用户路径,要求它只产出最小 HTML、列出 for/id/name 对照以及待补的后端校验。展示的标签结构依据 MDN 文档核对,但本站未把该例作为真实可收集信息的上线表单。正式页面还要补服务端验证、数据处理说明与安全措施,不能将浏览器级检查等同完整防护。
