vue中使用element-ui进行表单验证的实例代码


Posted in Javascript onJune 22, 2018

element-ui 中验证

一、简单逻辑验证(直接使用rules)

实现思路

•html中给el-form增加 :rules="rules"
•html中在el-form-item 中增加属性 prop="名称"

•js中直接在data中定义rules:{}

•html部分

<el-form ref="form" :rules="rules" :model="form" label-width="300px">
    <el-form-item label="发货地址:" prop="fAdderss">
     <el-input class="inp" v-model="form.fAdderss" auto-complete="true"></el-input>
     <el-button type="primary" class="btn-add" @click="onSubmit">常用地址</el-button>
    </el-form-item>
   </el-form>

js部分

<script>
export default {
 data() {
  return {
   form: {
    fAdderss: '',
   },
   // 校验规则
   rules: {
    fAdderss: [
    { required: true, //是否必填
     message: '地址不能为空', //规则
     trigger: 'blur' //何事件触发
    },
    //可以设置双重验证标准
    { min: 3, max: 5, message: '长度在 3 到 5 个字符', }
   ]
   }
  }
 }
}
</script>

二、自定义验证逻辑

实现思路

•html中给el-form增加 :rules="rules"
•html中在el-form-item 中增加属性 prop="名称"
•js中直接在data中在rules中的名称对应中设置 validator: 验证器名称,

•js中在data中 return之上书写验证器对应的js验证逻辑

•html部分

<el-form ref="form" :rules="rules" :model="form" label-width="300px">  
    <el-form-item label="发货人电话" prop="phone">
     <el-input class="inp" v-model="form.phone" auto-complete="true"></el-input>
    </el-form-item>
   </el-form>

•js部分

<script>
export default {
 data() {
  // 此处自定义校验手机号码js逻辑
  var phoneReg = /^[1][3,4,5,7,8][0-9]{9}$/
  var validatePhone = (rule, value, callback) => {
   if (!value) {
    return callback(new Error('号码不能为空!!'))
   }
   setTimeout(() => {
    if (!phoneReg.test(value)) {
     callback(new Error('格式有误'))
    } else {
     callback()
    }
   }, 1000)
  }
  return {
   form: {  
    phone: '',
   },
   // 校验规则
   rules: {
    // 校验手机号码,主要通过validator来指定验证器名称
    phone: [{ required: true, validator: validatePhone, trigger: 'blur' }]
   },
  }
 }
}
</script>

效果图如下

vue中使用element-ui进行表单验证的实例代码

三、表单提交

实现思路

•html中给el-form增加 ref="form" :model="ruleForm"
•html中给提交按钮增加点击事件 @click="submitForm('ruleForm')" ()中对应的为form的:model="ruleForm"
•js中直接在methods中定义提交事件 submitForm(){}

+html部分

//form
<el-form :model="ruleForm" :rules="rules" ref="ruleForm" label-width="0px" >
//表单项
 <el-form-item label="发货人电话" prop="phone">
     <el-input class="inp" v-model="form.phone" auto-complete="true"></el-input>
 </el-form-item>、
 ...
 //提交按钮
 <el-button class="btn-login" type="primary" size="medium" @click="submitForm('ruleForm')">立即登录</el-button>       
</el-form>

•js部分

methods: {
  submitForm(formName) {
   this.$refs[formName].validate(valid => {
    if (valid) {
       //如果通过验证 to do...
    } else {
     console.log('error submit!!')
     return false
    }
   })
  }

总结

以上所述是小编给大家介绍的vue中使用element-ui进行表单验证的实例代码,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js判断选择时间不能小于当前时间的示例代码
Sep 24 Javascript
JS生成随机字符串的多种方法
Jun 10 Javascript
node.js 开发指南 ? Node.js 连接 MySQL 并进行数据库操作
Jul 29 Javascript
JQuery页面随滚动条动态加载效果的简单实现(推荐)
Feb 08 Javascript
jquery表单提交带错误信息提示效果
Mar 09 Javascript
微信小程序访问node.js接口服务器搭建教程
Apr 25 Javascript
JS使用插件cryptojs进行加密解密数据实例
May 11 Javascript
vue实现全选和反选功能
Aug 31 Javascript
JS+canvas动态绘制饼图的方法示例
Sep 12 Javascript
ajax前台后台跨域请求处理方式
Feb 08 Javascript
JS实现的简单折叠展开动画效果示例
Apr 28 Javascript
js实现图片实时时钟
Jan 15 Javascript
QQ跳转支付宝并自动领红包脚本(最新)
Jun 22 #Javascript
JavaScript 下载svg图片为png格式
Jun 21 #Javascript
MVVM 双向绑定的实现代码
Jun 21 #Javascript
在vue2.0中引用element-ui组件库的方法
Jun 21 #Javascript
vue树形结构获取键值的方法示例
Jun 21 #Javascript
vue使用jsonp抓取qq音乐数据的方法
Jun 21 #Javascript
Vue 获取数组键名的方法
Jun 21 #Javascript
You might like
利用Memcached在php下实现session机制 替换PHP的原生session支持
2010/08/21 PHP
php警告Creating default object from empty value 问题的解决方法
2014/04/02 PHP
ThinkPHP模板判断输出Defined标签用法详解
2014/06/30 PHP
php实现的树形结构数据存取类实例
2014/11/29 PHP
完美解决php 导出excle的.csv格式的数据时乱码问题
2017/02/18 PHP
js身份证判断方法支持15位和18位
2014/03/18 Javascript
SuperSlide2实现图片滚动特效
2014/06/20 Javascript
javascript制作的简单注册模块表单验证
2015/04/13 Javascript
JavaScript中setFullYear()方法的使用详解
2015/06/11 Javascript
jquery心形点赞关注效果的简单实现
2016/11/14 Javascript
JS实现仿PS的调色板效果完整实例
2016/12/21 Javascript
详解handlebars+require基本使用方法
2016/12/21 Javascript
快速了解vue-cli 3.0 新特性
2018/02/28 Javascript
jquery实现的简单轮播图功能【适合新手】
2018/08/17 jQuery
Vue2 监听属性改变watch的实例代码
2018/08/27 Javascript
JavaScript面试中常考的字符串操作方法大全(包含ES6)
2020/05/10 Javascript
基于Echarts图表在div动态切换时不显示的解决方式
2020/07/20 Javascript
[00:35]DOTA2上海特级锦标赛 MVP.Phx战队宣传片
2016/03/04 DOTA
[05:13]2018DOTA2亚洲邀请赛主赛事第二日战况回顾 LGD、VG双雄携手晋级
2018/04/05 DOTA
利用Python将数值型特征进行离散化操作的方法
2018/11/06 Python
Python2与Python3的区别实例总结
2019/04/17 Python
浅析python,PyCharm,Anaconda三者之间的关系
2019/11/27 Python
python脚本和网页有何区别
2020/07/02 Python
python实现简单贪吃蛇游戏
2020/09/29 Python
世界上最大的街头服饰网站:Karmaloop
2017/02/04 全球购物
Tenstickers法国:墙贴和装饰贴纸
2019/08/26 全球购物
德国苹果商店:MacTrade
2020/05/18 全球购物
小学数学教学反思
2014/02/02 职场文书
服装行业创业计划书范文
2014/02/05 职场文书
法人任命书范本
2014/06/04 职场文书
优秀学生干部事迹材料
2014/12/24 职场文书
齐云山导游词
2015/02/06 职场文书
学生逃课万能检讨书2000字
2015/02/17 职场文书
大二学年个人总结
2015/03/03 职场文书
远程教育培训心得体会
2016/01/09 职场文书
小学生反邪教心得体会
2016/01/15 职场文书