vue el-date-picker 开始日期不能大于结束日期的实现代码

 更新时间:2024年01月26日 15:23:40   作者:guochanof  
这篇文章主要介绍了vue el-date-picker 开始日期不能大于结束日期的实现代码,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧

HTML

      <el-form-item label="开始日期" prop="startTime">
        <el-date-picker clearable v-model="form.startTime" type="date" value-format="yyyy-MM-dd" :picker-options="pickerOptionsStartq" placeholder="请选择开始时间">
        </el-date-picker>
      </el-form-item>
      <el-form-item label="结束日期" prop="endTime">
        <el-date-picker clearable v-model="form.endTime" type="date" value-format="yyyy-MM-dd" :picker-options="pickerOptionsEndq" placeholder="请选择结束时间">
        </el-date-picker>
      </el-form-item>

JS:  (写在data内)

满足开始日期不能大于结束日期,并且****几种情况如下:

开始日期不能大于结束日期

      pickerOptionsStart: {
        disabledDate: time => {
          if (this.form.endTime) {
            return (
              time.getTime() >
              new Date(this.form.endTime).getTime() -
                1 * 24 * 60 * 60 * 1000
            );
          }
        }
      },
      pickerOptionsEnd: {
        disabledDate: time => {
          return (
            time.getTime() <
            new Date(this.form.startTime).getTime() -
              8.64e7 +
              1 * 24 * 60 * 60 * 1000
          );
        }
      },

开始日期不能大于结束日期 --选择今天以后的日期--今天可选 

      pickerOptionsStart: {
        disabledDate: time => {
          if (this.form.endTime) {
            return (
              time.getTime() < Date.now() - 8.64e7 ||
              time.getTime() >
                new Date(this.form.endTime).getTime() - 1 * 24 * 60 * 60 * 1000
            );
          }
          return time.getTime() < Date.now() - 8.64e7;
        }
      },
      pickerOptionsEnd: {
        disabledDate: time => {
          return (
            time.getTime() < Date.now() - 8.64e7 ||
            time.getTime() <
              new Date(this.form.startTime).getTime() -
                8.64e7 +
                1 * 24 * 60 * 60 * 1000
          );
        }
      },

开始日期不能大于结束日期--选择今天以后的日期--今天不可选

      pickerOptionsStart: {
        disabledDate: time => {
          if (this.form.endTime) {
            return (
              time.getTime() < Date.now() - 8.64e7 ||
              time.getTime() >
                new Date(this.form.endTime).getTime() - 1 * 24 * 60 * 60 * 1000
            );
          }
          return time.getTime() < Date.now();
        }
      },
      pickerOptionsEnd: {
        disabledDate: time => {
          return (
            time.getTime() < Date.now() ||
            time.getTime() <
              new Date(this.form.startTime).getTime() -
                8.64e7 +
                1 * 24 * 60 * 60 * 1000
          );
        }
      },

开始日期不能大于结束日期--选择今后一年内的日期

      pickerOptionsStart: {
        disabledDate: time => {
          if (this.form.endTime) {
            return (
              time.getTime() <
              new Date(this.form.endTime).getTime() - 365 * 24 * 60 * 60 * 1000
            );
          }
        }
      },
      pickerOptionsEnd: {
        disabledDate: time => {
          return (
            time.getTime() >
            new Date(this.form.startTime).getTime() +
              8.64e7 +
              365 * 24 * 60 * 60 * 1000
          );
        }
      },

只有一个日期框, 要求只能选今天以后的

      pickerOptions: {
        disabledDate: time => {
          // return time.getTime() < Date.now() - 8.64e7; // 今天可选
          return time.getTime() < Date.now();//今天不可选
        }
      },

到此这篇关于vue el-date-picker 开始日期不能大于结束日期的文章就介绍到这了,更多相关vue el-date-picker 开始日期不能大于结束日期内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • javascript中Set、Map、WeakSet、WeakMap区别

    javascript中Set、Map、WeakSet、WeakMap区别

    这篇文章主要介绍了javascript中Set、Map、WeakSet、WeakMap区别,需要的朋友可以参考下
    2022-12-12
  • vue3中使用swiper及遇到的问题解析

    vue3中使用swiper及遇到的问题解析

    这篇文章主要介绍了vue3中使用swiper及遇到的问题,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-04-04
  • Vue.js动态添加、删除选题的实例代码

    Vue.js动态添加、删除选题的实例代码

    这篇文章主要介绍了Vue.js动态添加、删除选题的实例代码,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-09-09
  • vue-better-scroll 的使用实例代码详解

    vue-better-scroll 的使用实例代码详解

    这篇文章主要介绍了vue-better-scroll 的使用实例代码详解,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2018-12-12
  • vue中v-model如何绑定多循环表达式实战案例

    vue中v-model如何绑定多循环表达式实战案例

    v-model绑定的变量无论是对象还是数组都是绑定的value值,下面这篇文章主要给大家介绍了关于vue中v-model如何绑定多循环表达式的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-11-11
  • Vue的兼容性解决方案Babel-polyfill案例解析

    Vue的兼容性解决方案Babel-polyfill案例解析

    这篇文章主要介绍了Vue的兼容性解决方案Babel-polyfill的相关知识,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2023-11-11
  • Element中el-tabs左右滑动动画的实现

    Element中el-tabs左右滑动动画的实现

    本篇博客将详细介绍如何在使用 Vue 以及 Element UI 时,实现一个具有左右滑动效果的 tab 切换动画,文中通过示例代码介绍的非常详细,需要的朋友们下面随着小编来一起学习学习吧
    2024-03-03
  • Vue数据驱动模拟实现1

    Vue数据驱动模拟实现1

    这篇文章主要介绍了Vue数据驱动模拟实现的相关资料,允许采用简洁的模板语法声明式的将数据渲染进DOM,且数据与DOM绑定在一起,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-01-01
  • vue.js实现只弹一次弹框

    vue.js实现只弹一次弹框

    本篇文章通过代码实例给大家详细讲述了一个vue的实例,实现只弹一次弹框功能,一起学习分享下。
    2018-01-01
  • vue权限问题的完美解决方案

    vue权限问题的完美解决方案

    今天来说说权限管理,因为网上已经有很多关于这方面的很多内容,下面这篇文章主要给大家介绍了关于vue权限问题的完美解决方案,需要的朋友们下面来一起学习学习吧
    2019-05-05

最新评论