这段时间被迫搞前端搞裂开了,记录一下手机号验证码校验登录的极简无样式前端实现
巨丑!希望大佬们不介意
下面是先演示效果

  • 点击登陆后显示校验信息

  • 输入手机号点击获取验证码

  • 输入符合校验的内容后点击登录提示成功

无后端交互!!!!
非常非常简单的功能,我觉得这是个万能模板,全部代码如下。

<template><el-form ref="loginForm" :model="form" :rules="rules" :inline="true"><el-form-item label="手机号" prop="phone"><el-input type="text" maxlength="11" placeholder="手机号" style="width: 250px" v-model="form.phone" /></el-form-item><el-form-item label="验证码" prop="code"><el-input type="text" maxlength="6" placeholder="验证码" v-model="form.code" style="width: 250px" /><el-button :disabled="disabled" @click="getCode">{{ valiBtn }}</el-button></el-form-item><el-form-item><el-button type="primary" @click.prevent="onSubmit('loginForm')">登 录</el-button></el-form-item></el-form>
</template>
<script>
export default {data() {var checkPhone = (rule, value, callback) => {if (value === "") {callback(new Error("请输入绑定的手机号码"))} else if (!/^(13[0-9]|14[5|7]|15[0|1|2|3|4|5|6|7|8|9]|18[0|1|2|3|5|6|7|8|9])\d{8}$/.test(value)) {callback(new Error("请输入正确的手机号码"))} else {callback()}};var checkCode = (rule, value, callback) => {if (value === "") {callback(new Error("请输入验证码"))} else if (!/^[0-9]+$/.test(value) || !/^\d{6}$/.test(value)) {callback(new Error("请输入6位数字的验证码"))} else {callback()}};return {form: {phone: '',code: ''},autoLogin: false,rules: {phone: [{ validator: checkPhone, required: true, trigger: 'blur' }],code: [{  validator: checkCode, required: true, trigger: 'blur' }]},valiBtn: '获取验证码',disabled: false,}},methods: {//获取验证码 并只验证手机号 是否正确getCode() {this.$refs['loginForm'].validateField('phone', (err) => {if (err) {console.log('未通过')return;} else {console.log('已通过')console.log(this.form.phone)this.tackBtn();   //验证码倒数60秒}})},tackBtn() {       //验证码倒数60秒let time = 60;let timer = setInterval(() => {if (time == 0) {clearInterval(timer);this.valiBtn = '获取验证码';this.disabled = false;} else {this.disabled = true;this.valiBtn = time + '秒后重试';time--;}}, 1000);},onSubmit(formName) {  //点击登录 验证手机& 验证码是否符合条件this.$refs[formName].validate((valid) => {    // 为表单绑定验证功能if (valid) {this.$alert("成功", "提示")}});},},
}
</script>

需要的自取,涂涂改改就能用!就是需要自己调样式~

重新发了一个好看点的版本,需要的看一下,用了对话框
https://blog.csdn.net/ZZDT099/article/details/128498405?spm=1001.2014.3001.5502

vue element-ui 手机号校验 验证码校验 获取验证码倒数60秒无样式实现相关推荐

  1. JS点击获取验证码后60秒内禁止重新获取(防刷新)

    JS点击获取验证码后60秒内禁止重新获取(防刷新) 参考 · 阅读文章: JS实现发送短信验证后按钮倒计时功能(防止刷新倒计时失效) 注意: 场景:在登录页点击发送啊验证码按钮,开始进入倒计时,在第3 ...

  2. JavaScript获取验证码,60秒倒计时方法

    html <div class="item-input code-box"><input type="text" class="us ...

  3. 获取验证码倒计时60秒

    <template><view class="content"><view class="inps"><input c ...

  4. vue+element ui表单校验(邮箱、电话、工商信息)

    vue+element ui表单校验(邮箱.电话.工商信息)) Html部分 <template><div><el-steps :active="active& ...

  5. 关于vue.js element ui 表单验证 this.$refs[formName].validate()的问题

      方法使用前需了解: 来自"和"小编的小提示: 首先打印一下this.$refs[formName],检查是否拿到了正确的需要验证的form. 其次在拿到了正确的form后,检查 ...

  6. 【vue开发问题-解决方法】(五)vue Element UI 日期选择器获取日期格式问题 t.getTime is not a function

    [vue开发问题-解决方法](五)vue Element UI 日期选择器获取日期格式问题 t.getTime is not a function 参考文章: (1)[vue开发问题-解决方法](五) ...

  7. vue+element项目 手机号、邮箱校验 保姆级教程

    vue+element项目 手机号.邮箱校验 保姆级教程 (包含注意点) 先看案例:在vue+element项目中给表单中的手机号和邮箱做校验 标题先说注意点 prop黄色框框起来的一定要有 废话不多 ...

  8. Vue+Element UI 下,如何给一个表单设置自定义规则或多个验证规则(:rules)

    依旧是公司里那个Vue+Element UI的项目.今天遇到了一个新的问题:表单中某个选择器的值不同,控制着下面表单内容是否显示. 大概就是这个样子.由后台返回的"发放方式"的数值 ...

  9. 【前端】Vue+Element UI案例:通用后台管理系统-用户管理:Table表格增删查改、Pagination分页、搜索框

    文章目录 目标 代码 0.结构 1.按钮-删除 2.按钮-编辑 3.debug 4.样式 5.分页Pagination:功能 6.分页Pagination:样式 7.搜索框:功能 8.搜索框:样式 总 ...

最新文章

  1. Tengine AIFramework框架
  2. Deepfake让罗伯特·德尼罗用流利的德语表演台词!差点忘了他是美国人
  3. inner join
  4. Eclipse异常关闭启动不了的问题
  5. 哪种开源许可证最适合商业化?
  6. Python3十大经典错误及解决办法
  7. java关于贪吃蛇的源代码_完整的贪吃蛇(蛇吃蛋)Java源代码
  8. codeforces 85D. Sum of Medians
  9. explain分析sql效果
  10. win10一直正在检查更新_win10一直存在的烦人问题,终于被彻底解决!你会选择更新么?...
  11. Python攻克之路-生成器
  12. 第四章:函数式数据处理(一)-----流(Stream)
  13. Atitit 项目文档规范化与必备文档与推荐文档列表
  14. 线性代数及其matlab应用课后题答案,线性代数课后习题答案全)习题详解.docx
  15. “拖延症”的良方——对于追求完美,自制力差,情绪化的人很受用...
  16. 好家伙!微软苏州 M365,上班时间打王者荣耀?
  17. opencv鼠标事件和滑条操作
  18. 面试官:说说left join和left semi join 两者有什么区别?
  19. MATLAB 设置msgbox若干秒后自动关闭
  20. 三维重建、视觉定位、传感器位置推算,滴滴 AR 实景导航技术详解

热门文章

  1. 树莓派 3B+ 安装 OpenWrt 作为中继路由器.md
  2. dhcp服务器在哪个位置,dhcp服务器是什么 dhcp服务器怎么设置【步骤教程】
  3. 「雷锋前线」攻破一把智能门锁的N种方法
  4. 第四届蓝桥杯真题解析【JavaC组】
  5. 内网渗透一条龙简洁版
  6. python爬虫设计刷博客访问量(刷访问量,赞,爬取图片)
  7. Mybatis-Plus自动生成代码,自定义Controller
  8. 计算机无法链接无线网络,电脑无线网络无法连接
  9. 基于 Python 的 tkinter 模块制作的名人名言查询工具
  10. 单行溢出隐藏没生效_溢出隐藏:最全的利用css解决内容溢出问题的几种方案