表单验证时 required 属性不生效是怎么回事?

打工人爱霖 阅读 2

我写了个简单的登录表单,给用户名和密码都加了 required 属性,但提交时居然没触发浏览器默认的验证提示,直接就提交了。是不是哪里写错了?

我用的是原生 HTML 表单,没加 JS 干预,按理说应该自动阻止提交才对。试过 Chrome 和 Firefox 都一样,有点懵。

<form action="/login" method="post">
  <input type="text" name="username" required>
  <input type="password" name="password" required>
  <button type="submit">登录</button>
</form>
我来解答 赞 0 收藏
二维码
手机扫码查看
1 条解答
博主艺凝
应该是你的 button 没有指定 type 属性,默认当成 type="submit" 处理了。虽然这通常没问题,但保险起见试试把 button 改成 <button type="submit">。如果还不行,检查下 form 标签是不是嵌套在其他表单里了。
点赞
2026-03-27 20:39