0

我正在尝试调用一个日历,除星期四外,每一天都被阻止。

有些星期四会被阻止,所以我使用 daysOfWeekDisabled 和 disableDate。

jQuery('.custom-calendar-2').datetimepicker({
    format: "dd/mm/yyyy",
    daysOfWeekDisabled: [0,1,2,3,5,6],
    useCurrent: true,
    inline: true,
    /*beforeShowMonth: function (date) {
        if (date.getMonth() == 8) {
            return false;
        }
    },*/
    defaultDate: null,
    minDate: moment().add(1, 'days'),
    disabledDates: [
        moment('04/07/2016', 'MM/DD/YYYY'),
        moment('04/21/2016', 'MM/DD/YYYY')
    ],
    //toggleActive: true
});

如果我评论该行

moment('04/07/2016', 'MM/DD/YYYY'),

我的日历有效。我正在尝试调试它,但我就是不明白。控制台说:

尝试了 7 次以找到有效日期

我该如何解决该错误?

编辑:

我钻进了图书馆。在第 1648 行有这个片段:

if (tries === 7) {
    throw 'Tried 7 times to find a valid date';
}

将尝试次数更改为更大的值(例如 14)就可以了。我得到了避免某种无限循环的想法,但是这样你就不能做一个基本的操作,比如阻塞当前的一周。

我想知道是否有另一种更好的方法可以自己修改库/猴子补丁。或者这应该直接修补到存储库中?

4

2 回答 2

1

当您尝试从日历中设置禁用日期时,您可以使用 keepinvalid = true。 https://eonasdan.github.io/bootstrap-datetimepicker/Options/#keepinvalid

于 2018-09-28T22:31:08.267 回答
0

我已经发送了一个临时修复请求。https://github.com/Eonasdan/bootstrap-datetimepicker/pull/1558

于 2016-04-18T11:22:36.713 回答