Vue表单组件el-form校验规则rules,条件判断rules表单验证显示必填或非必填

在使用 Element UI(一个基于 Vue 的前端框架)的表单验证功能时,你可能想要实现一个规则,使得某些字段在特定条件下成为必填项,或者在满足某些条件时不允许为空。这通常通过自定义校验规则来实现。

复制代码
<template>
   <div class="psu-title">提交信息</div>
   <el-form :model="formData" :rules="rules" ref="form" label-width="150px">
     <el-form-item label="是否通过:" prop="auditStatus">
       <el-radio-group v-model="formData.auditStatus">
         <el-radio label="1">通过</el-radio>
         <el-radio label="0">不通过</el-radio>
       </el-radio-group>
     </el-form-item>
     <el-form-item label="备注备注:" prop="auditRemark" :rules="formData.auditStatus === '0' ? rules.auditRemark:[{require: false}]">
       <el-input type="textarea" maxlength="100" placeholder="请输入" :rows="4" show-word-limit v-model="formData.auditRemark"></el-input>
     </el-form-item>
   </el-form>
   <div style="text-align: right;">
     <el-button>确定</el-button>
     <el-button>取消</el-button>
   </div>
</template>
export default {
  data() {
    return {
      formData: {
        auditStatus: '',
        auditRemark: '',
      },
      rules: {
        auditStatus: [ { required: true, message: '请选择', trigger: 'change' }],
        auditRemark: [ { required: true, message: '请输入', trigger: 'blur' }],
      },
    };
  },
 
  methods: {
    //方法...
  },
};
</script>
相关推荐
dsyyyyy11011 天前
JavaScript变量
开发语言·javascript·ecmascript
kyriewen1 天前
手写 Promise.all、race、any:不到 30 行代码,解决并发异步的所有姿势
前端·javascript·面试
胡志辉的博客1 天前
深入浅出理解浏览器事件循环:从一道输出题讲到 Chrome 源码
前端·javascript·chrome·chromium·event loop
代码不加糖1 天前
js中不会冒泡的事件有哪些?
前端·javascript·vue.js
懂懂tty1 天前
Vue2与Vue3之间API差异
前端·javascript·vue.js
老毛肚1 天前
软件测试期末考试
vue.js
小二·1 天前
Next.js 15 全栈开发实战
开发语言·javascript·ecmascript
杨若瑜1 天前
本地开发环境慢?localhost的锅!
vue.js
Rain5091 天前
2.1 Nest.js 项目初始化与模块化架构
开发语言·前端·javascript·后端·架构·数据分析·node.js
拾年2751 天前
从零手写 Ajax:用原生 XHR 搭建前后端交互全流程
前端·javascript·ajax