开始时间大于结束时间

1.dom中代码,监听所选日期值的变化,并把需要比较的时间字段作为参数传到监听方法中,

c 复制代码
<el-form-item label="起始日期" prop="startTime">
            <el-date-picker clearable size="small"
                            :disabled="isDisable"
                            v-model="form.startTime"
                            type="date"
                            value-format="yyyy-MM-dd"
                            @change="checkTime(form.startTime,form.expirationTime,form.signingTime,'start')"
                            :placeholder="isDisable? '':'选择起始日期'">
            </el-date-picker>
          </el-form-item>
          <el-form-item label="终止日期" prop="expirationTime">
            <el-date-picker clearable size="small"
                            :disabled="isDisable"
                            v-model="form.expirationTime"
                            type="date"
                            value-format="yyyy-MM-dd"
                            @change="checkTime(form.startTime,form.expirationTime,form.signingTime,'expiration')"
                            :placeholder="isDisable? '':'选择终止日期'">
            </el-date-picker>
          </el-form-item>
          <el-form-item label="签订时间" prop="signingTime">
            <el-date-picker clearable size="small"
                            :disabled="isDisable"
                            v-model="form.signingTime"
                            type="date"
                            value-format="yyyy-MM-dd"
                            @change="checkTime(form.startTime,form.expirationTime,form.signingTime,'signing')"
                            :placeholder="isDisable? '':'选择签订时间'">
            </el-date-picker>
          </el-form-item>

2.时间比较逻辑处理

c 复制代码
 //时间判断
      checkTime(startTime, expirationTime,signingTime, type) {
       /* if (startTime == '' || startTime == null || startTime == undefined) {
          return;
        }
        if (expirationTime == '' || expirationTime == null || expirationTime == undefined) {
          return;
        }
        if (signingTime == '' || signingTime == null || signingTime == undefined) {
          return;
        }*/
        if (startTime > expirationTime) {
          this.$modal.msgWarning("开始时间应小于终止时间!");
          if (type == 'start') {
            this.$set(this.form, 'startTime', '');
          } else if (type == 'expiration') {
            this.$set(this.form, 'expirationTime', '');
          }
        }
        if (startTime < signingTime) {
          this.$modal.msgWarning("开始时间应大于或等于签订时间!");
          if (type == 'start') {
            this.$set(this.form, 'startTime', '');
          }else if (type == 'signing') {
            this.$set(this.form, 'signingTime', '');
          }
        }
      },

二.当比较的是form表单中数组中循环的两个时间时,用以下方法

1.dom中监听日期值的变化 @change="checkTime()"

c 复制代码
 //本次读数时间必须大于上次读数时间
      checkTime() {
        this.form.readings.forEach(item => {
          if (item.readingTime < item.scdssj) {
            this.$modal.msgError("本次读数时间应大于上次读数时间!");
            item.readingTime = ''; // 清空本次读数所选日期
          }
        });
      },
相关推荐
小小的木头人2 分钟前
Docker 环境下迁移 containerd 数据目录:从 `/var/lib/containerd` 到 `/data/containerd`
linux·docker
东城居士1 小时前
验证第一个Linux字符驱动程序
linux·嵌入式系统
sunshine22 girl1 小时前
Idea中如何搜索
java·ide·intellij-idea
猫吻鱼1 小时前
【AI 01】【Spring AI 基础使用】
java·spring·spring ai
梨涡泥窝1 小时前
基于SSM的校园二手交易平台的设计与实现
java·tomcat
许彰午1 小时前
44-useRowSet镜像实现
java·低代码·架构
bamboolm2 小时前
springboot+Ollama整合
java·ollama
我不会起名字3223 小时前
一天一道算法题(34):回溯法的经典例题(子集)
java·数据结构·python·算法·golang·深度优先·力扣
网硕互联的小客服3 小时前
各个版本的Linux系统如何修改远程端口ssh端口?
linux·运维·服务器·网络
kyriewen3 小时前
我花3天抓了一个幽灵bug,凶手藏在第4层
前端·javascript·程序员