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

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

<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. Entity Framework 查漏补缺 (三)

    Code First的数据库映射 有两种方式来实现数据库映射: 数据属性:Data Annotation 映射配置: Fluent API 有继承关系的实体如何映射? Code First在生成数据库 ...

  2. Python实战171202元组访问

    学生信息系统中数据为固定格式: (名字,年龄,性别,邮箱地址,......) 学生数量很大为了减小存储开销,对每个学生信息用元组表示: ('jim',18,'male','jim8765@gmail. ...

  3. SLAM+语音机器人DIY系列:(八)高阶拓展——1.miiboo机器人安卓手机APP开发

    android要与ROS通讯,一种是基于rosbridge,另一种是基于rosjava库. 相关参考例子工程 rosbridge例子: https://github.com/hibernate2011 ...

  4. 贝塞尔曲线控件 for .NET (EN)

    Conmajia 2012 Updated on Feb. 18, 2018 In Photoshop, there is a very powerful feature Curve Adjust, ...

  5. App.config自定义节点读取

    <?xml version="1.0" encoding="utf-8"?> <configuration> <!--<ot ...

  6. dotnet检测类型是否为泛型

    private static string GetTableName(Type type) { //检测类型是否为泛型 if (type.GetType().IsGenericType) {//取出泛 ...

  7. C#之使类型参数--泛型

    1.泛型是什么 泛型的就是“通用类型”,它可以代替任何的数据类型,使类型参数化,从而达到只实现一个方法就可以操作多种数据类型的目的. 2.为什么使用泛型 举一个比较两个数大小的例子: 以上例子实现in ...

  8. 第五章:shiro密码加密

    在涉及到密码存储问题上,应该加密/生成密码摘要存储,而不是存储明文密码.比如之前的600w csdn账号泄露对用户可能造成很大损失,因此应加密/生成不可逆的摘要方式存储. 5.1 编码/解码 Shir ...

  9. 三位数流水码的生成(000·····009··00A····00Z····ZZZ)

    //规格代码的生成 private String getCode (String code) { char[] chars=code.toCharArray(); if (chars[2]==57){ ...

  10. 可以让你神操作的手机APP推荐 个个都是爆款系列

    手机在我们的生活中显得日益重要,根据手机依赖度调查显示,69%的人出门时必带手机,20%的人经常在吃饭睡觉.上卫生间时使用手机:43%的人早上起床第一件事就是查看手机,不用多说,我们对于手机的依赖性越 ...