vue+elementui表单验证规则举例

<template>

<div>

<el-form

            ref="ruleForm"

            :model="ruleForm"

            label-width="117px"

            :rules="rules"

>

<div class="company-name">

                <el-form-item label="公司名称" prop="companyName">

                  <el-input v-model="ruleForm.companyName"></el-input>

                </el-form-item>

              </div>

</el-form>

</div>

</template>

<script>

export default {

  data() {

    var validateCompanyName = (rule, value, callback) => {

      if (value === "") {

        callback(new Error("请输入公司名称"));

      }

    };

return {

ruleForm: {

        companyName: "",

},

rules: {

        companyName: [

          {

            min: 3,

            max: 10,

            message: "长度在 3 到 10 个字符",

            trigger: "blur",

          },

          { validator: validateCompanyName, trigger: "blur" },

        ],

}

}

</script>

trigger: "blur"表示在失去焦点时进行验证el-input中的数据是否符合rules中的条件

callback(new Error("请输入公司名称"));表示错误回调函数,如果检查数据不符合规则则会以红色字体显示在el-input输入框下面,警告语句可以根据需要进行位置和长度的调整

提示:以上代码不能直接复制粘贴

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
VueElementUI都是非常流行的前端开发框架,它们可以让我们更加便捷地开发前端应用。其中,ElementUI提供了非常多的表单验证规则,可以让我们在表单输入时对用户的输入进行验证,增强了用户输入的可靠性和安全性。但是,有时候我们需要根据不同的表单输入,动态地切换验证规则,以达到更加灵活的表单验证效果。那么,该如何实现动态切换验证规则呢? 首先,在Vue中我们可以通过v-if和v-else来切换不同的验证规则。例如: <template> <el-form ref="form" :model="formData" :rules="rules" label-width="100px"> <el-form-item label="姓名" prop="name"> <el-input v-model="formData.name" placeholder="请输入姓名"></el-input> </el-form-item> <el-form-item label="年龄" prop="age"> <el-input v-model="formData.age" placeholder="请输入年龄"></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="submitForm('form')">提交</el-button> </el-form-item> </el-form> </template> <script> export default { data() { return { formData: { name: '', age: '' }, rules: { name: [ {required: true, message: '请输入姓名', trigger: 'blur'} ], age: [ {required: true, message: '请输入年龄', trigger: 'blur'} ] } } }, methods: { submitForm(formName) { this.$refs[formName].validate((valid) => { if (valid) { alert('提交成功') } else { alert('验证失败') return false } }) } } } </script> 在上面的代码中,我们定义了一个包含两个输入框(姓名和年龄)的表单,并根据不同的用户输入动态切换了验证规则。其中,rules是验证规则对象,包含了每个表单元素对应的验证规则。当我们需要根据输入内容动态切换规则时,只需要在对应的表单元素上设置v-if和v-else指令来切换不同的验证规则即可。 总之,在VueElementUI中动态切换验证规则的原理就是利用Vue的特性动态切换v-if和v-else指令来实现,以满足不同的表单验证需求。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值