表单自定义校验获取的value为undefined(element ui)

javascript 复制代码
<el-form :model="form" :rules="rules">
  <el-form-item label="年龄" prop="age">
    <el-input v-model.number="form.age"></el-input>
  </el-form-item>
</el-form>  
javascript 复制代码
 export default {
	data() {
      var checkAge = (rule, value, callback) => {
        if (!value) {
          return callback(new Error('年龄不能为空'));
        }
        if (!Number.isInteger(value)) {
           callback(new Error('请输入数字值'));
        } else {
           if (value < 18) {
             callback(new Error('必须年满18岁'));
           } else {
             callback();
           }
         }
      };
      return {
        form: {
          age: ''
        },
        rules: {
          age: [
            { validator: checkAge, trigger: 'blur' }
          ]
        }
      };
}

可能原因有一下几点:

1首先: el-from 里面要绑定modal和rules, :model="ruleForm" :rules="rules" ;

然后:el-form-item 里面的 prop对应绑定一个rules里面的规则,prop="age";

input输入框里面要绑定 v-model.number="ruleForm.age"

2,form和rules里面对应的key一定要相同,一个是数据绑定的值 另外一个是值的规则。

  1. 仔细检查下每个标签里面对应的值是否正确。

    详细的表单校验请访问 Element UI 官网:Element UI 表单校验

相关推荐
星辰即远方21 小时前
计算器仿写总结
学习·ui·ios·cocoa·xcode
踩着两条虫1 天前
VTJ.PRO AI Agent 技术白皮书
前端·vue.js·低代码
java1234_小锋1 天前
Vue3专题 - 列表渲染
vue.js
飞凌嵌入式1 天前
告别多端重复开发:Buildroot+Flutter实现全平台UI风格统一
flutter·ui
小锋java12341 天前
【技术专题】Vue3 - 列表渲染
vue.js·vite
zho_uzhou1 天前
ubuntu服务端运行vue网页步骤
linux·服务器·vue.js·ubuntu
滴滴答答哒2 天前
VUE3+element-plus MultiSelect 多选下拉组件
前端·javascript·vue.js
其美杰布-富贵-李2 天前
04 watch 与 Vue 响应式数据流
前端·javascript·vue.js
其美杰布-富贵-李2 天前
03 ref、reactive 与 computed 响应式数据
前端·javascript·vue.js