element ui From表单校验不生效问题解决

 更新时间:2024年01月02日 08:49:50   作者:奔跑的代码!  
表单校验是注册环节中必不可少的操作,表单校验可以提醒用户填写数据规则以确保用户提交数据的有效性,本文主要介绍了element ui From表单校验不生效问题解决,具有一定的参考价值,感兴趣的可以了解一下

解决方案① el-from上要使用:model不要使用v-model

 <el-form ref="ruleForm" :model="testForm" label-width="100px" :rules="rules">

解决方案② el-from-item上是否有加prop,并确定prop是不是和编写的规则相同

  <el-form-item label="活动名称" prop="name">
    <el-input v-model="testForm.name"></el-input>
  </el-form-item>
  // 校验规则 prop name相同
   rules: {
    	name: [
            { required: true, message: '请输入活动名称', trigger: 'blur' },
            { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
          ]
       }

解决方案③$refs[formName]$refs.formName注意事项 前者提交的时候要传参@click="submitForm('ruleForm')" 不然不生效

//官方的写法是$refs[formName]  
 <el-form ref="ruleForm" :model="testForm" label-width="100px" :rules="rules">
  <el-form-item label="活动名称" prop="name">
    <el-input v-model="testForm.name"></el-input>
  </el-form-item>
  <el-form-item>
    <el-button type="primary" @click="submitForm('ruleForm')">提交</el-button>
  </el-form-item>
 <el-form>
 data() {
    return {
    testForm:{
        name:'',
      },
   rules: {
    	name: [
            { required: true, message: '请输入活动名称', trigger: 'blur' },
            { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
          ]
       }
    }
  },
 methods: {
    // 第一种方法要接收参数 并且$refs[formName]
      submitForm(formName) {
        this.$refs[formName].validate((valid) => {
          if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!');
            return false;
          }
        });
      },
//网上也有用 $refs.formName 第二种写法的 
 <el-form ref="ruleForm" :model="testForm" label-width="100px" :rules="rules">
  <el-form-item label="活动名称" prop="name">
    <el-input v-model="testForm.name"></el-input>
  </el-form-item>
  <el-form-item>
  // 不需要传参 第二种方式
    <el-button type="primary" @click="submitForm()">提交</el-button>
  </el-form-item>
 <el-form>
 data() {
    return {
    testForm:{
        name:'',
      },
   rules: {
    	name: [
            { required: true, message: '请输入活动名称', trigger: 'blur' },
            { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
          ]
       }
    }
  },
 methods: {
    // 第二种方法不需要接收参数 并且$refs.formName
      submitForm() {
        this.$refs.formName.validate((valid) => {
          if (valid) {
            alert('submit!');
          } else {
            console.log('error submit!!');
            return false;
          }
        });
      },

解决方案④网上有人说 未在data里面声明初始数据也会报错(未复现.解决方案仅供参考)

  <el-form-item label="活动名称" prop="name">
    <el-input v-model="testForm.name"></el-input>
  </el-form-item>
 data() {
    return {
  // 校验规则 prop name相同
    testForm:{
        name:'',//意思是这个位置没有声明 name 也会不生效 我测试了一下不声明也生效 仅供参考
      },
   rules: {
    	name: [
            { required: true, message: '请输入活动名称', trigger: 'blur' },
            { min: 3, max: 5, message: '长度在 3 到 5 个字符', trigger: 'blur' }
          ]
       }
    }
  }

平时遇到的一些小问题 自我记录 有补充的地方希望大家多多提出意见 共同学习!

到此这篇关于element ui From表单校验不生效问题解决的文章就介绍到这了,更多相关element From表单校验内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • vue项目keepAlive配合vuex动态设置路由缓存方式

    vue项目keepAlive配合vuex动态设置路由缓存方式

    vue项目keepAlive配合vuex动态设置路由缓存方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04
  • vuex数据状态持久化问题

    vuex数据状态持久化问题

    这篇文章主要介绍了vuex数据状态持久化问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • 详解vue组件中使用路由方法

    详解vue组件中使用路由方法

    在本篇文章里小编给大家分享了关于vue组件中使用路由的详细步骤内容,有需要的朋友们跟着学习下。
    2019-02-02
  • Vue编程三部曲之将template编译成AST示例详解

    Vue编程三部曲之将template编译成AST示例详解

    这篇文章主要为大家介绍了Vue编程三部曲之将template编译成AST示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-07-07
  • vue.js 实现输入框动态添加功能

    vue.js 实现输入框动态添加功能

    这篇文章主要介绍了vue.js 实现输入框动态添加功能,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-06-06
  • 实现一个Vue自定义指令懒加载的方法示例

    实现一个Vue自定义指令懒加载的方法示例

    这篇文章主要介绍了实现一个Vue自定义指令懒加载的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • vue与react详细

    vue与react详细

    react在中后台项目中由于在处理复杂的业务逻辑或组件的复用问题比vue优雅而被人认可,但也更需要团队技术整体比较给力,领头大佬的设计与把关能力要更优秀,因此开发成本更大,下面文章就来详细介绍,需要的朋友可以参考下
    2021-09-09
  • vue3中使用router路由实现跳转传参的方法

    vue3中使用router路由实现跳转传参的方法

    这篇文章主要介绍了vue3中使用router路由实现跳转传参的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • vue中el-table前端如何导出excel数据表格

    vue中el-table前端如何导出excel数据表格

    这篇文章主要介绍了vue中el-table前端如何导出excel数据表格,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2024-07-07
  • vue实现路由懒加载及组件懒加载的方式

    vue实现路由懒加载及组件懒加载的方式

    懒加载简单来说就是延迟加载或按需加载,即在需要的时候的时候进行加载。这篇文章主要介绍了vue路由懒加载及组件懒加载 ,需要的朋友可以参考下
    2019-06-06

最新评论