elementui的一个el-form-item里面多个el-select 的校验


 <el-form :model="ruleForm" ref="ruleEditForm" :rules="userRules" label-width="100px" class="demo-ruleForm">

.....省略 ....
 <el-form-item label="住址" prop="address">

          <el-select v-model="ruleForm.province" placeholder="请选择省" @change="changeProvince" style="width:120px">
            <el-option v-for="item in provinceList" :key="item.value" :label="item.label" :value="item.value">
            </el-option>
          </el-select>

          <el-select v-model="ruleForm.city" placeholder="请选择市" @change="changeCity" style="width:120px">
            <el-option v-for="item in cityOptions" :key="item.value" :label="item.label" :value="item.value">
            </el-option>
          </el-select>

          <el-select v-model="ruleForm.origin" placeholder="请选择区" @change="changeOrigin" style="width:120px">
            <el-option v-for="item in originOptions" :key="item.value" :label="item.label" :value="item.value">
            </el-option>
          </el-select>

        </el-form-item>

.....省略 ....
 </el-form>
在  data() {}里面 
.....省略 ....
// 省县乡的三级联动的校验
      var checkaddress3 = (rule, value, callback) => {
        if (!(this.ruleForm.province && this.ruleForm.city  && this.ruleForm.origin )) {
          return callback(new Error('请输入完整的省县乡信息'));
        } else {
          callback();
        }
      }
.....省略 ....

      // 新增待面试人员的or 编辑 表单的  校验规则
      userRules: {
.....省略 ....
        // 地址详情:
        addressDetail: [
          { required: true, message: '请输入详细的家庭地址', trigger: 'blur' }
        ],
.....省略 ....
      },

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
要在el-form + el-table中每个单元格内嵌el-form-item项,并且需要添加校验功能,可以按照以下步骤操作: 1. 在el-form-item中添加需要校验的表单控件,如el-input、el-select等。 2. 在el-form-item中添加校验规则,可以通过rules属性来添加校验规则,如: ``` <el-form-item prop="name" label="姓名" :rules="nameRules"> <el-input v-model="form.name"></el-input> </el-form-item> ``` 在data中定义nameRules数组对象: ``` data() { return { form: { name: '' }, nameRules: [ { required: true, message: '请输入姓名', trigger: 'blur' }, { min: 2, max: 10, message: '长度在2到10个字符', trigger: 'blur' } ] } } ``` 这里定义了两个校验规则,第一个规则要求该字段不能为空,第二个规则要求该字段长度在2到10个字符之间。 3. 在el-table中添加slot-scope,用于获取每个单元格的数据。如: ``` <el-table :data="tableData"> <el-table-column label="姓名"> <template slot-scope="{ row }"> <el-form-item prop="name" :rules="nameRules"> <el-input v-model="row.name"></el-input> </el-form-item> </template> </el-table-column> </el-table> ``` 这里通过slot-scope获取到每个单元格的数据,并将数据绑定到el-input中。同时在el-form-item中添加了校验规则。 4. 在methods中定义表单提交的方法,并调用el-form的validate方法对表单进行校验。如: ``` methods: { submitForm() { this.$refs.form.validate((valid) => { if (valid) { // 校验通过,提交表单 } else { // 校验不通过,提示错误信息 } }); } } ``` 这里通过this.$refs.form.validate方法对表单进行校验,如果校验通过,则提交表单;如果校验不通过,则提示错误信息。 以上就是在el-form + el-table中添加校验的方法,希望能够帮到你。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值