1.实现效果

2.代码

html

<template><el-form:model="ruleForm":rules="rules"ref="ruleForm"class="demo-ruleForm"><el-form-item label="" prop="name"><el-inputtype="text"autocomplete="off"v-model="ruleForm.name"prefix-icon="el-icon-user-solid"placeholder="请输入用户名"></el-input></el-form-item><el-form-item label="" prop="password1"><el-inputtype="password"autocomplete="off"v-model="ruleForm.password1"prefix-icon="el-icon-lock"placeholder="请输入密码"></el-input></el-form-item><el-form-item label="" prop="password2"><el-inputtype="password"autocomplete="off"v-model="ruleForm.password2"prefix-icon="el-icon-lock"placeholder="请再次输入密码"></el-input></el-form-item><el-form-item class="btns"><el-button type="primary" @click="submitForm('ruleForm')">注册</el-button><el-button @click="resetForm('ruleForm')">重置</el-button></el-form-item></el-form>
</template>

js

验证用户名后端返回数据

<script>
//引入接口
import { userRules, register } from "./../api/login";
export default {data() {var validatePass = (rule, value, callback) => {if (value === "") {callback(new Error("请输入密码"));} else {if (this.ruleForm.password2 !== "") {this.$refs.ruleForm.validateField("password2");}callback();}};var validatePass2 = (rule, value, callback) => {if (value === "") {callback(new Error("请再次输入密码"));} else if (value !== this.ruleForm.password1) {callback(new Error("两次输入密码不一致!"));} else {callback();}};var checkname = (rule, value, callback) => {if (value != "") {if(this.nameRules()){callback(new Error("用户名已存在,请重新输入"))}else{callback()}}callback();};return {activeName:"second",ruleForm: {name: "",password1: "",password2: "",email:""},rules: {name: [{ required: true, message: "请输入您的名称", trigger: "blur" },{min: 2,max: 25,message: "长度在 2 到 25 个字符",trigger: "blur",},{ validator: checkname, trigger: "blur" },],password1: [{ required: true, validator: validatePass, trigger: "blur" },],password2: [{ required: true, validator: validatePass2, trigger: "blur" },],},};},methods: {submitForm(formName) {const data = {name : this.ruleForm.name,password1:this.ruleForm.password1,password2:this.ruleForm.password2,email:this.ruleForm.email}this.$refs[formName].validate((valid) => {if (valid) {register(data).then((res) => {if (res.message == "ok") {this.$message.success("注册成功");this.resetForm(formName)} else {this.$message.error("注册失败");}});} else {return false;}});},resetForm(formName) {this.$refs[formName].resetFields();},//验证用户名是否存在nameRules() {let params = {name: this.ruleForm.name,};userRules(params).then((res) => {if(res.message == 'ok'){return false}else{this.$message.error("用户名已存在,请重新输入!")this.ruleForm.name = ""}})},}
};
</script>

vue+elementui 注册验证用户名是否存在相关推荐

  1. asp判断ajax请求 -asp.net,一个asp注册验证用户名是否重复的Ajax实例

    一个asp注册验证用户名是否重复的Ajax实例 1.需要用到的初始化xmlhttp实例和发送请求的javascript函数: 以下为引用的内容: // JavaScript Document func ...

  2. php注册验证用户名已存在,php ajax注册验证用户名是否存在代码_PHP教程

    php ajax注册验证用户名是否存在代码 这是注册程序是一款当用户输入完用户名是,就会自动去数据库中查询用户要注册的用户名是否己经被注册了,如果是返回提示否则提示可以注册. php教程 ajax注册 ...

  3. vue表单验证(用户名、密码、身份证号、中文姓名、手机号、邮箱)

    vue表单验证(用户名.密码.身份证号.中文姓名.手机号.邮箱) new Vue({el: '#register',data: function() {// 验证邮箱let checkEmail = ...

  4. html ajax验证用户名密码,AJAX实现注册验证用户名

    本文实例为大家分享了AJAX实现注册验证用户名的具体代码,供大家参考,具体内容如下 功能说明 当用户在注册页面输入用户名并且鼠标焦点离开输入框时,到数据表中去验证该用户名是否已经存在,如果存在提示不可 ...

  5. vue+elementui身份证验证

    1.js // 身份证验证isCardID (rule, value, callback) {console.log(value)if (!/(^\d{15}$)|(^\d{17}(\d|X|x)$) ...

  6. vue+element-ui el-input验证手机号 / 身份证

    el-input验证手机号 html <el-form ref="Form" :rules="rules" :model="edit" ...

  7. Vue使用表单验证用户名和密码

    功能描述:实现输入用户名和密码不合法时提前弹出提示 表单样式: 基本功能: 为空时提示: 长度不合法时提示: 表单输入文本框代码: <el-form :model="user" ...

  8. vue 表单验证正则_vue elementui form表单验证的实现

    最近我们公司将前端框架由easyui 改为 vue+elementui .自学vue两周 就开始了爬坑之路.业余时间给大家分享一下心得,技术新手加上第一次分享(小激动),有什么不足的地方欢迎大家指正, ...

  9. 用vue+element-ui快速写一个注册登录页面

    vue+element-ui可以快速开发一个页面,免除大部分的css代码. 一.用表单来做: 1.代码: <!--基本html代码区域--> <template><div ...

  10. vue+elementUI完成登陆+注册

    目录 1. vue怎么引入和配置使用element-ui框架 1.1 使用vue-cli脚手架工具创建一个vue项目 1.2 npm安装elementUI 1.3 在项目中src目录下找到main.j ...

最新文章

  1. c++调用shell命令
  2. linux系统适合电脑小白吗,linux小白说说用linux的感受
  3. centos php mcrypt,CentOS yum php mcrypt 扩展安装方法
  4. react 动态修改路由_reactjs – 如何动态添加重定向到反应路由器?
  5. 实体词典 情感词典_基于词典的情感分析——简单实例
  6. 操作系统中的page cache机制
  7. go mysql es 不要分词_ElasticSearch踩坑记录-Go语言中文社区
  8. 使用原生js实现邮箱模糊查询的效果
  9. 主流硬盘接口有哪些?
  10. 6.2.6 String_Number
  11. java在线答疑系统_网上学习和答疑系统系统
  12. 世界名牌CD机解码芯片大全
  13. MYSQL union 联合查询
  14. window 服务器443端口占用,443和80端口被占用win10如何解决_443和80端口被占用win10怎么处理...
  15. 30天自制操作系统——第一天到第二天
  16. 初出茅庐的SwapX为何可以对垒Uniswap?
  17. 动态规划之钢条切割问题——Rod-cutting problem
  18. Git:Github镜像网站
  19. Thinkpad T420 安装 mSATA SSD 固态硬盘
  20. Luogu P2708 硬币翻转 题解

热门文章

  1. Android TCP客户端调试助手
  2. 快速批量执行redis命令
  3. linux redis-连接命令
  4. 解决Sublime提示 Sublime Text Error while loading PyV8 binary:exit code 1 Try to manually install Pyv8 fo
  5. YOLO学习笔记4——YOLOV2详解+论文解读
  6. UReport2导出报错
  7. idea maven tomcat 热部署
  8. MySQL——锁机制和数据库并发问题解决方案
  9. MIPI D-PHY IP 使用说明(二)
  10. Linux命令详解之 rm