选择了开始时间,再选择结束时间的时候就不能早于开始时间;
选择了结束时间,再选择开始时间的时候就不能晚于结束时间;

如果开始时间为空,选择结束时间只能是今天之后的时间;

<el-date-picker v-model="ruleForm.startTime" type="date" placeholder="开始时间" :picker-options="pickerOptions0"></el-date-picker>
<el-date-picker v-model="ruleForm.endTime" type="date" placeholder="截止时间" :picker-options="pickerOptions1"></el-date-picker>
data(){
return {
    pickerOptions0: {        
     disabledDate: time => {
          if (this.ruleForm.endTime != "" && this.ruleForm.endTime) {
            let timeStr = new Date(this.ruleForm.endTime.replace(/-/g, "/"));
            return time.getTime() > timeStr;
          } else {
            return "";
          }
        }
      },
      pickerOptions1: {
        disabledDate: time => {
          if (this.ruleForm.startTime != "" && this.ruleForm.startTime) {
            let timeStr = new Date(this.ruleForm.startTime.replace(/-/g, "/"));
            return time.getTime() < timeStr;
          } else if (this.ruleForm.startTime == "") {
            return time.getTime() < Date.now() - 8.64e7; //如果没有后面的-8.64e7就是不可以选择今天
          } else {
            return "";
          }
        }
      }
    }
}
 

选择今天以及今天之后的日期

<el-date-picker
v-model="value1"
type="date"
placeholder="选择日期"
:picker-options="pickerOptions0">
</el-date-picker> data(){
return {
pickerOptions0: {
disabledDate(time) {
return time.getTime() < Date.now() - 8.64e7;//如果没有后面的-8.64e7就是不可以选择今天
}
}
}
}

选择今天以及今天以前的日期

data (){
return {
pickerOptions0: {
disabledDate(time) {
return time.getTime() > Date.now() - 8.64e6;//如果没有后面的-8.64e6就是不可以选择今天
}
},
}
}

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

<el-date-picker
v-model="value1"
type="date"
placeholder="开始日期"
:picker-options="pickerOptions0">
</el-date-picker>
<el-date-picker
v-model="value2"
type="date"
placeholder="结束日期"
:picker-options="pickerOptions1">
</el-date-picker> data(){
return {
pickerOptions0: {
disabledDate: (time) => {
if (this.value2 != "") {
return time.getTime() > new Date(this.value2).getTime(); }
},
pickerOptions1: {
disabledDate: (time) => {
return time.getTime() < new Date(this.value1).getTime()- 1*24*60*60*1000;//减去一天的时间代表可以选择同一天;
}
},
}
}

限制选择开始时间不能小于当前时间。并且结束时间不能大于开始时间(比上面多了层限时)

pickerOptions0: {
//结束时间不能大于开始时间
disabledDate: time => {
if (this.addForm.date_range_end) {
return (
time.getTime() >
new Date(this.addForm.date_range_end).getTime()
);
} else {
//还没有选择结束时间的时候,让他只能选择今天之后的时间包括今天
return time.getTime() < Date.now() - 8.64e7;
}
}
},
pickerOptions1: {
disabledDate: time => {
if (this.addForm.date_range_start) {
return (
time.getTime() <
new Date(this.addForm.date_range_start).getTime() -
1 * 24 * 60 * 60 * 1000
); //可以选择同一天
}
}
},

限制不能选择今年之后的年份

<el-date-picker v-model="year" type="year" placeholder="选择年度" value-format="yyyy" :picker-options="pickerOptions0"></el-date-picker>
pickerOptions0: {
disabledDate(time) {
return time.getTime() > Date.now() - new Date().getFullYear();
}
},

ElementUI DatePicker 日期选择器控制选择时间范围的更多相关文章

  1. element-ui DatePicker 日期选择器 让结束日期大于开始日期

    element-ui  DatePicker 日期选择器 <el-date-picker v-model="addForm.startDate" type="dat ...

  2. ElementUI datepicker日期选择器时间选择范围限制

    ElementUI是饿了么推出的一套基于vue2.x的一个ui框架.官方文档也很详细,这里做一个element-ui日期插件的补充. 最近做项目用到了datepicker,需要对日期选择做一些限制, ...

  3. element-ui DatePicker 日期格式处理

    1.使用DatePicker 日期选择器得到的日期格式是这样的 解决方案,添加 value-format="yyyy-MM-dd" <el-date-picker type= ...

  4. Android中DatePicker日期选择器的使用和获取选择的年月日

    场景 实现效果如下 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书.教程推送与免费下载. 实现 将布局改 ...

  5. DatePicker 日期选择器

    用于选择或输入日期 选择日 以「日」为基本单位,基础的日期选择控件 基本单位由type属性指定.快捷选项需配置picker-options对象中的shortcuts,禁用日期通过 disabledDa ...

  6. 【ElementUI】日期选择器时间选择范围限制

    ElementUI是饿了么推出的一套基于vue2.x的一个ui框架.官方文档也很详细,这里做一个element-ui日期插件的补充. 官方文档中使用picker-options属性来限制可选择的日期, ...

  7. 关于ElementUI中日期选择器时间选择范围限制

    1.组件代码 <el-date-picker v-model="value1" type="date" placeholder="选择日期&qu ...

  8. DatePicker日期选择器的使用

    效果展示: 代码如下: <el-date-picker v-model="listQuery.times" type="daterange" range- ...

  9. HTML5调用手机的Datepicker(日期选择器)

    HTML5 拥有多个新的表单输入类型.这些新特性提供了更好的输入控制和验证,包含了如下新的输入类型: email url number range Date pickers (date, month, ...

随机推荐

  1. springboot项目容器化

    创建一个简单的springboot项目,依赖中加入: 编写一个Restfull接口: 编写启动类: 启动项目,浏览器访问该接口,得到想要的结果.下面,就将这个项目进行Docker容器化(applica ...

  2. DSAPI 短域名服务

    有时,需要将长域名转换为短域名,或是为了减少字符量,或是为了隐藏真实网址.在DSAPI中,集成了EPS-GS的短域名接口.该功能需要联接互联网,从EPS服务器获取. 代码 DSAPI.网络.短域名服务 ...

  3. c# List根据某个属性进行分类,变成以属性名称作为分类的多个List

    在平时的开发中,我们从数据库中得到List列表,但是我们希望可以根据属性名称再次进行分类. 其实LINQ中已经内置相应的算法. 长话短说,直接上代码: var dataList = JsonHelpe ...

  4. WPF ResourceDictionary 主题资源替换(一)

    当我们需要在程序中替换主题,更换另一套背景.颜色.样式时,如何在不修改资源Key值,直接替换呢? 问题&疑问 1. Key值冲突 同一ResourceDictionary中,不可以使用相同Ke ...

  5. 学习经验分享(最近听了一节Java公开课)

    最近听了一节Java公开课,讲的Tomcat8.0的,老师分享的学习方法很好, 时间和精力要用对地方 1.学习一个知识的广度和深度,先学主要的主流的,不要学了很多不该学,没必要学的东西 2.要花时间总 ...

  6. Nginx实现负载均衡功能

    一.什么是Nginx? Nginx是一款轻量级的Web 服务器.反向代理服务器.电子邮件(IMAP/POP3)代理服务器. 二.Nginx的优点: 高并发连接:官方测试Nginx能够支撑5万并发连接, ...

  7. Javascript之高级数组API的使用实例

    JS代码中我们可以根据需求新建新的对象解决问题的同时,也有一些常用的内置对象供我们使用,我们称之为API,本篇文章只是对数组部分进行了练习. 例一:伪数组,不能修改长短的数组(所以没办法清零),可以修 ...

  8. React-Native学习手册----搭建基于ios平台的开发环境

    首先推荐几个链接: React-Native 官网地址:https://facebook.github.io/react-native/docs/getting-started React-Nativ ...

  9. 使用Android服务,实现报警管理器和广播接收器

    介绍 几乎在所有平台上都有很多进程运行背景,它们被称为服务.可能在Android平台中有一些服务可以执行长时间运行的操作,这些操作在处理时不需要用户交互. 在本文中,借助预定义的Android警报服务 ...

  10. 基于Netty 实现简单的私有协议

    原文链接 基于Netty 实现简单的私有协议 代码仓库地址 基于Netty 实现简单的私有协议 在学习了Netty的不同的编码器和解码器之后,我们可以通过编解码器实现简单的自定义协议,这个自定义的协议 ...