【问题标题】:When restricting date in datepicker, it restricts the dates of next year在日期选择器中限制日期时,它会限制明年的日期
【发布时间】:2020-01-07 14:42:35
【问题描述】:

这是参考How to get a specific future date in date picker

我更改了代码。答案:

onEditData(data): void {
    var newdate = this.getNextDayToStartDate(data.startDate);
    this.editData = {
      Name: data.Name,
      startDate: this.getDate(data.startDate),
      endDate: newdate
    }
    this.editDataDialog = true;
  }

但是当我选择 2019 年的开始日期时,在结束日期选择器中它会限制 2020 年的日期。请查看:https://stackblitz.com/edit/angular-dtnlyc

谢谢。

【问题讨论】:

    标签: angular


    【解决方案1】:

    您需要重构以下代码块:

    getNextDayToStartDate(startDate): string {
      startDate = new Date(startDate);
      const nextDay = new Date();
      nextDay.setDate(startDate.getDate() + 1);
      console.log(nextDay)
      return nextDay.toISOString().split('T')[0];
    }
    

    const next day = new Date(); 您正在获取当前日期并根据开始日期设置日期。请记住,new Date() 为您提供 2020 年。setDate() 方法设置月份中的日期。它不会改变年份或月份。

    尝试以下方法:

    getNextDayToStartDate(startDate): string {
      const nextDay = new Date(startDate);
      nextDay.setDate(nextDay.getDate() + 1);
      return nextDay.toISOString().split('T')[0];
    }
    

    【讨论】:

    • 是的,它有效!并感谢您清除概念。 :)
    猜你喜欢
    • 2012-09-09
    • 1970-01-01
    • 1970-01-01
    • 2018-12-16
    • 2020-01-04
    • 1970-01-01
    • 1970-01-01
    • 2023-03-05
    • 1970-01-01
    相关资源
    最近更新 更多