使用semantic-ui-calender设置minDate和maxDate

时间:2018-01-28 12:23:43

标签: javascript reactjs vue.js calendar semantic-ui

任何人都使用过语义ui日历? 我卡住了,怎样才能将最小和最大时间设置为晚上11点到早上6点。

let today = new Date();
let set_date = new Date(today.getFullYear(), today.getMonth(), today.getDate());
let set_next_date = new Date(today.getFullYear(), today.getMonth(), today.getDate() + 1);


let min = new Date(set_date.setHours(23,0,0,0));
let max = new Date(set_next_date.setHours(6,0,0,0));

startTime.calendar({
    type: 'time',
    minDate: min,
    maxDate: max,
    onChange(date, text, mode){
        self.updateStartTime(text)
    },
})

endTime.calendar({
    type: 'time',
    minDate: min,
    maxDate: max,
    startCalendar: startTime,
    onChange(date, text, mode){
        self.updateEndTime(text)
    }
})

1 个答案:

答案 0 :(得分:2)

您不需要创建date个实例来为他们设置hours,就像您所做的那样,只要像我一样,您就会拥有自己想要的东西。

定义2个新变量并使用setHours方法更改其小时数:

var minDate = new Date();
var maxDate = new Date();
minDate.setHours(6);
maxDate.setHours(23);

并初始化您的Semantic-UI Calendar,如下所示:

startTime.calendar({
    type: 'time',
    minDate: minDate,
    maxDate: maxDate,
    onChange(date, text, mode){
        self.updateStartTime(text)
    },
})

endTime.calendar({
    type: 'time',
    minDate: minDate,
    maxDate: maxDate,
    startCalendar: startTime,
    onChange(date, text, mode){
        self.updateEndTime(text)
    }
})

我还为您提供了一个关于JSFiddle的示例: http://jsfiddle.net/ali_bahrami/ka52oo7s/1/