el-date-picker根据某个时间动态规定可选的的时间范围

el-date-picker组件根据某一个时间段来动态规定当前时间选择的日期时间范围

例如:开始时间为2024-8-19,规定可循范围为30天的话,可选范围是2024-8-19至2024-9-19号之间

html

<el-date-picker

                class="date"

                type="date"

                format="YYYY-MM-DD 23:59:59"

                value-format="YYYY-MM-DD 23:59:59"

                v-model="endTime"

                clearable

                placeholder="结束日期"

                style="max-width: 180px"

                :disabled-date="disabledDate"

              >

              </el-date-picker>

javascript

const disabledDate = (time: Date) => {

  if (startTime) {

    const thirtyDaysLater = new Date(new Date(startTime).getTime() + 30 * 24 * 60 * 60 * 1000); // 开始时间30天后的时间  

    const startTimeDate = new Date(startTime); // 开始时间的Date对象

    return time.getTime() > thirtyDaysLater.getTime() || time.getTime() < startTimeDate.getTime();

  }

};

  • 10
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
动态设置el-date-picker可选日期范围可以通过设置picker-options中的disableDate属性来实现。具体的实现方法是,在change事件中动态改变picker-options中的disableDate属性,使其返回需要禁用的日期列表。 相关代码示例: ```javascript <template> <el-date-picker v-model="date" :picker-options="pickerOptions" @change="updateDisableDates" ></el-date-picker> </template> <script> export default { data() { return { date: '', pickerOptions: { disableDate: date => { // 返回需要禁用的日期列表 const disabledDates = [ new Date('2021-01-01'), new Date('2021-01-02'), new Date('2021-01-03') ]; return disabledDates.some(disabledDate => this.isSameDay(date, disabledDate) ); } } }; }, methods: { updateDisableDates() { // 动态修改picker-options中的disableDate属性 this.pickerOptions.disableDate = date => { const disabledDates = [ new Date('2021-02-01'), new Date('2021-02-02'), new Date('2021-02-03') ]; return disabledDates.some(disabledDate => this.isSameDay(date, disabledDate) ); }; }, isSameDay(date1, date2) { // 判断两个日期是否是同一天 return ( date1.getFullYear() === date2.getFullYear() && date1.getMonth() === date2.getMonth() && date1.getDate() === date2.getDate() ); } } }; </script> ``` 以上代码中,我们通过在change事件中动态修改picker-options中disableDate属性的方法来实现动态设置el-date-picker可选日期范围。在最初的picker-options中,我们设置了一些初始的禁用日期,然后在change事件中更新了disableDate属性的值,使其返回新的禁用日期列表。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值