css如何实现表单验证功能

王林
王林 转载
2020-03-13 10:13:54 2395浏览

原理

表单元素中,有一个pattern属性,可以自定义正则表达式(如手机号、邮箱、身份证..);valid伪类,可以匹配通过pattern验证的元素;invalid伪类则相反,可以匹配未通过pattern验证的元素。

(推荐教程:CSS入门教程

html代码

布局很简单,input跟button是兄弟节点的关系,required属性是必填的意思,也就是输入的内容必须要验证通过;

<section class="container">
  <input type="text" name="tel" placeholder="请输入手机号码" pattern="^1[3456789]\d{9}$" required><br>
  <input type="text" name="tel" placeholder="请输入验证码" pattern="\d{4}" required><br>
  <button type="submit"></button>

css代码

这里用的是scss预处理器

input {
  // 验证通过时按钮的样式
  &:valid {
    &~button {
      pointer-events: all;
      cursor: pointer;
      &::after {
        content: "提交:+1:"
      }
    }
  }
  // 验证不通过时按钮的样式
  &:invalid {
    &~button {
      pointer-events: none; // 去除点击事件,让按钮无法点击
      &::after {
        content: "未通过验证:unamused:"
      }
    }
  }
}

相关视频教程推荐:css视频教程

以上就是css如何实现表单验证功能的详细内容,更多请关注php中文网其它相关文章!

声明:本文转载于:脚本之家,如有侵犯,请联系admin@php.cn删除