【问题标题】:ngb-datepicker disable datesngb-datepicker 禁用日期
【发布时间】:2018-12-03 08:32:06
【问题描述】:

我一直试图在我的 ngb-datepicker 中禁用周末。我还没有得到想要的输出。请看我的代码:

<ngb-datepicker #dp  [displayMonths]="1" [dayTemplate]="t"
      [minDate]="{year: 2018, month: 12, day: 1}"
      [maxDate]="{year: 2018, month: 12, day: 31}" 
      [markDisabled]="isDisabled">
    </ngb-datepicker>

        <ng-template #t let-date="date" let-focused="focused">
          <span class="custom-day" (click)="onDateSelection($event,date)"
                [class.focused]="focused"
                [class.range]="isFrom(date) || isTo(date) || isInside(date) || isHovered(date)"
                [class.faded]="isHovered(date) || isInside(date)"
                [class.selected]="isDateSelected(date)"
                [class.halfDay]="chkLeaveType(date,'half')"
                [class.fullDay]="chkLeaveType(date,'full')"
                [class.holiDay]="chkLeaveType(date,'holiDay')"
                (mouseenter)="hoveredDate = date"
                (mouseleave)="hoveredDate = null">
            {{ date.day }}
          </span>
        </ng-template>


     isDisabled(date: NgbDateStruct) {
        const d = new Date(date.year, date.month - 1, date.day);
        console.log(d.getDay() === 0);
        return  d.getDay() === 0 || d.getDay() === 6;
      }

isDisabled 函数正在执行并返回适当的值,但我在日历中看不到禁用效果。 谁能告诉我我的代码有什么问题?提前致谢

【问题讨论】:

标签: angular ngb-datepicker


【解决方案1】:

只需在标签中添加“禁用”属性即可。不需要值。像这样:

<ngb-datepicker #dp  [displayMonths]="1" [dayTemplate]="t"
  [minDate]="{year: 2018, month: 12, day: 1}"
  [maxDate]="{year: 2018, month: 12, day: 31}" 
  disabled ></ngb-datepicker>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-19
    • 2013-06-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多