el-date-picker如何根据选择的第一个时间设置可选范围

3 篇文章 0 订阅

根据选择的第一个时间设置可选范围,假设设置可选范围为7天。

如下图:选择的第一个时间为2022.08.15,则选择的第二个时间只能在2022.08.08——2022.08.15或者2022.08.15——2022.08.22中去选择。

 代码如下:

<template>
	<div>
		<el-date-picker size="small" v-model="dataRange" type="daterange" range-separator="~" start-placeholder="开始日期" end-placeholder="结束日期" :picker-options="pickerOptions"/>
	</div>
</template>

<script>
	export default {
		data() {
			return {
				dataRange: '',
				pickerOneDate: '',
				pickerOptions: {
					// 获取选择的第一个时间
					onPick: (obj) => {
						this.pickerOneDate = new Date(obj.minDate).getTime();
					},
					disabledDate: (time) => {
						//选择了第一个时间的情况下根据第一个时间设置可选范围
						//未选择第一个时间的情况下可选范围只能选择过去的时间
						if (this.pickerOneDate) {
							const day = 7 * 24 * 3600 * 1000
							let maxTime = this.pickerOneDate + day
							let minTime = this.pickerOneDate - day
							return time.getTime() > maxTime || time.getTime() < minTime || time.getTime() > Date.now()
						} else {
							return time.getTime() > Date.now()
						}
					}
				}
			}
		},
	}
</script>

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值