Element 组件 利用两个 el-date-picker 来处理开始时间跟结束时间之间的关系 (Picker Options)

可以利用 Picker Options 属性中的 disabledDate 参数来实现该功能

参考了大神的做法,自己记录下当作笔记,以便以后遇到~
(参考链接)https://www.jianshu.com/p/f69b94f9b117
在这里插入图片描述

代码区域
//html区域

<el-form-item label="活动时间:" prop="actStartTime">
    <el-date-picker v-model="params.actStartTime" type="datetime" style="width: 100%;" placeholder="选择开始时间" :picker-options="startTime" />
</el-form-item>

<el-form-item label="活动时间:" prop="actEndTime">
    <el-date-picker v-model="params.actEndTime" type="datetime" style="width: 100%;" placeholder="选择结束时间" :picker-options="endTime" />
</el-form-item>

//js区域(Vue)

data(){
	return{
		startTime: {
          disabledDate: time => {
            if (this.params.actEndTime) {
              return time.getTime() > new Date(this.params.actEndTime).getTime();
            }
          }
        },
        endTime: {
          disabledDate: time => {
            if (this.params.actStartTime) {
              return time.getTime() < new Date(this.params.actStartTime).getTime();
              //如果想实现结束时间可以在开始时间当天内的话 可以减掉86400000秒,相当于一天。
              //return time.getTime() < new Date(this.params.actStartTime).getTime() - 86400000;
            }
          }
        },
	}
}
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
您好!对于在 Element UI 中使用 el-date-picker 组件设置开始时间结束时间不能跨年的功能,您可以通过以下方式实现: 1. 使用`picker-options`属性:el-date-picker 组件提供了一个 `picker-options` 属性,您可以通过设置该属性来限制选择的日期范围。您可以在该属性中使用 `disabledDate` 方法来禁用特定的日期。 ```html <el-date-picker v-model="startDate" :picker-options="pickerOptions" ></el-date-picker> <el-date-picker v-model="endDate" :picker-options="pickerOptions" ></el-date-picker> ``` ```javascript data() { return { startDate: '', endDate: '', pickerOptions: { disabledDate(time) { // 获取当前时间的年份 const currentYear = new Date().getFullYear(); // 获取选择的日期的年份 const selectedYear = time.getFullYear(); // 如果选择的日期的年份与当前时间的年份不同,则禁用该日期 return currentYear !== selectedYear; } } } } ``` 2. 使用`value-format`属性:将 el-date-picker 组件的 `value-format` 属性设置为 "yyyy-MM-dd",这将强制日期选择器只接受年份、月份和日期的格式化字符串。这样,用户将无法选择跨年的日期。 ```html <el-date-picker v-model="startDate" value-format="yyyy-MM-dd" ></el-date-picker> <el-date-picker v-model="endDate" value-format="yyyy-MM-dd" ></el-date-picker> ``` 请根据您的需求选择合适的方法来实现开始时间结束时间不能跨年的限制。希望能帮到您!如果您有任何其他问题,请随时提问。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值