前端验证通过JavaScript在提交前实时检查表单,如邮箱、手机号格式及密码一致性,常用正则表达式匹配,监听input或blur事件动态提示,submit时阻止默认行为并统一校验,但不可替代后端验证。
JavaScript 可以在用户提交表单前实时检查输入内容是否符合要求,比如邮箱格式是否正确、密码是否重复、必填项是否为空等。这种验证叫“前端验证”,它不替代后端验证,但能立刻反馈问题,提升体验、减少无效提交。
用正则表达式(RegExp)匹配格式是最常用方式。例如:
/^[^\s@]+@[^\s@]+\.[^\s@]+$/ —— 确保含 @ 和点号,且前后都有字符/^1[3-9]\d{9}$/ —— 匹配以 1 开头、第二位是 3–9、共 11 位的数字 的 .value 是否相等不用等到点击提交才检查。可以监听 input、bl(失焦)或
urchange 事件:
input:每打一个字就校验(适合实时提示,但注意别太频繁)blur:用户离开当前输入框时校验(更常用,平衡体验和性能)className 或添加 提示文字 来显示结果给表单绑定 submit 事件,在回调中调用 event.preventDefault() 可阻止默认提交行为。再统一检查所有字段:
,检查 .value.trim() !== ""
form.submit() 或发送 fetch 请求)前端验证容易被绕过(禁用 JS、手动改 DOM、直接发请求),所以服务端必须重新验证。JS 验证只负责友好提醒和减轻服务器压力。另外:
type="email" 或 required 属性——它们只是基础辅助,兼容性和提示可控性差