如何在选择相同日期时启用日历关闭kendo-datepicker Angular?

时间:2018-01-31 08:44:29

标签: angular kendo-ui telerik kendo-ui-angular2 kendo-datepicker

我有<kendo-datepicker/>。它工作得很好,但是它没有机会两次选择上一个日期。

例如,如果我选择以下日期1.1.2018,则<kendo-datepicker/>会以所选日期结束。没关系。
但是,如果我想选择相同的日期1.1.2018,则<kendo-datepicker/>不会以所选日期结束。

You can reproduce this behaviour at Basic Usage of Overview of kendo-datepicker

我选择日期(1.1.2018)后是否可以选择相同的日期(1.1.2018)?

1 个答案:

答案 0 :(得分:0)

我决定在日历当天处理点击事件,并使用toggle上的kendo-datepicker方法折叠日历。

所以我们有kendo-datepicker

<kendo-datepicker #kendoDataPicker>
    <ng-template kendoCalendarCellTemplate let-date>
        <div (click)="handleClickCell(kendoDataPicker, date)">
            {{date.getDate()}}
        </div>
    </ng-template>
</kendo-datepicker>

JavaScript代码:

handleClickCell(kendoDataPicker : any, selectedDate: any){
    if( kendoDataPicker.hasOwnProperty('_value')
        && typeof( kendoDataPicker._value)!=='undefined'
        && typeof( selectedDate)!=='undefined'
        && selectedDate.toString() === kendoDataPicker._value.toString()
      ){
            kendoDataPicker.toggle();
    }
}

toggle()方法的kendo-datepicker方法可以解决日历是否应该崩溃的问题,真是太酷了。