el-form 表单校验

摘要:
数字isInteger){callback;}否则{if{callback;}否则{callback();}};导出默认{data(){return{dataForm:{name:“”,电子邮件:“”,年龄:“”},规则:{name:[{required:true,消息:'请输入名称',触发器:'模糊'},{min:3,max:5,消息:“长度为3到5个字符”,触发器:“模糊”}],email:[{required:true,消息:'请输入电子邮件地址',触发器:'模糊'},{type:'电子邮件',消息:“请输入正确的电子邮件地址”,触发器:[‘模糊','更改']}],年龄:[{max_age:18,验证器:checkAge,触发器:'blur'}//checkAge用户定义的规则函数]};},方法:{dataFormSubmitHandle(){this.$refs.dataForm.validate(valid=˃{if(valid){alert('submit!
<el-form ref="dataForm" :model="dataForm" :rules="rules" label-width="60px" @keyup.enter.native="dataFormSubmitHandle()">
<el-form-item prop="name" label="姓名">
    <el-input v-model="dataForm.name" placeholder="姓名" />
</el-form-item>
<el-form-item prop="email" label="邮箱">
    <el-input v-model="dataForm.email" placeholder="邮箱" />
</el-form-item>
<el-form-item label="年龄" prop="age">
    <el-input v-model.number="dataForm.age"></el-input>
</el-form-item>
<el-form-item>
    <el-button type="primary" @click="dataFormSubmitHandle()">确认</el-button>
    <el-button @click="resetForm()">重置</el-button>
</el-form-item>
</el-form>

<script>
  var checkAge = (rule, value, callback) => {
    if (!value) {
       return callback(new Error('年龄不能为空'));
     }
     if (!Number.isInteger(value)) {
         callback(new Error('请输入数字值'));
      } else {
        if (value < rule.max_age) {
          callback(new Error('必须年满18岁'));
        } else {
          callback();
        }
      }
  };
  export default {
    data() {
      return {
        dataForm: {
          name: '',
          email: '',
          age:''
        },
        rules: {
          name: [
            { required: true, message: '请输入姓名', trigger: 'blur' },
            { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
          ],
          email: [
           { required: true, message: '请输入邮箱地址', trigger: 'blur' },
           {type: 'email',message: '请输入正确的邮箱地址',trigger: ['blur', 'change'] }
          ],
          age: [
            {max_age:18, validator: checkAge, trigger: 'blur' }// checkAge自定义规则函数
          ]
        }
      };
    },
    methods: {
      dataFormSubmitHandle() {
        this.$refs.dataForm.validate(valid => {
        if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!')
          }
        });
      },
      resetForm() {
        this.$refs.dataForm.resetFields();
      }
    }
  }
</script>

详细的可查看element文档  https://element.eleme.cn/#/zh-CN/component/form

免责声明:文章转载自《el-form 表单校验》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇【转好文】c程序员学习perlpython中schedule模块的简单使用 || importlib.import_module动态导入模块下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

HTTP协议详解(深入理解)

版权声明:本文为CSDN博主「有抱负的小狮子」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。原文链接:https://blog.csdn.net/weixin_38087538/article/details/82838762 引入 超文本传输协议(HTTP,HyperText Transfer Protocol...

selenium 通过xpath进行元素定位--By.xpath()

xpath是XML路径语言,它可以用来确定xml文档中的元素位置,通过元素的路径来完成对元素的查找。HTML就是XML的一种实现方式,所以xpath是一种非常强大的定位方式。xpath也分几种不同类型的定位方法。 一种是绝对路径定位。这种定位方式是利用html标签名的层级关系来定位元素的绝对路径,一般从<html>标签开始依次往下进行查找。如百...

ASP.NET MVC学习笔记(一) 从路由开始创建mvc

  之前一篇写一半发现版本太老了,是基于mvc2的。   两本参考书编写的顺序各方面都不太一样。决定重新写一篇。   我这篇文章基于mvc5,vs2015 参考书:Will保哥的ASP.NET MVC4开发指南 一、创建一个项目    目录图解 1.从路由开始   using System; using System.Collections.Gen...

asp.net MVC中防止跨站请求攻击(CSRF)的ajax用法

参考: Preventing Cross-Site Request Forgery (CSRF) AttacksValidating .NET MVC 4 anti forgery tokens in ajax requests 在mvc中,微软提供了一个简单的方法来防止CSRF,就是在前端form表单里加上Anti-Forgery Tokens <...

vue爬坑之路--------this$refs[formName]validate

vue element-ui使用自定义正则表达式: let validatePass = (rule, value, callback) => { let regExp = /^(?![0-9]+$)(?![a-zA-Z]+$)[0-9A-Za-z]{8,16}$/ if (value === '') { call...

spring mvc实现新增用户

spring mvc实现新增用户 1、先在展示页面(查询出来的结果页)添加一个连接<a href="http://t.zoukankan.com/add">添加</a> 2、在后台添加一个添加的方法,点击添加,是跳转到add.jsp页面,刚过去没数据,应该是get方法请求 @RequestMapping(value="/add",...