按当前小时时间设置的Fullcalendar开始时间

时间:2017-09-20 22:20:22

标签: fullcalendar

我正在尝试在AngularJS中使用Fullcalendar。 我以某种方式实现了日历,它可以工作(将数据保存到SQL)。

但是,如果我点击日历中的日期,则弹出模态,开始日期显示时间方面的00:00:00。

我的问题是你如何设定当前时间的时间?

如果当前是9AM,那么,开始时间如何将时间初始化为09:00:00?

这就是我的编码方式。

select: function(start, end) {

    $('#ModalAdd #start').val(moment(start).format('YYYY-MM-DD HH:mm:ss'));
    $('#ModalAdd #end').val(moment(end).format('YYYY-MM-DD HH:mm:ss'));
    $('#ModalAdd').modal('show');
}

我有一种感觉,以某种方式修改下面的代码并将其放在上面的代码中会很好,但我仍然坚持放在哪里。

var time = new Time();
var h = date.getHour();

我不知道Time()是否有效(来自其他来源的是Date())。

请允许任何人根据当前时间帮我初始化Fullcalendar中的小时数吗?我正在寻找任何建议,甚至是暗示解决这个问题。

提前谢谢!

1 个答案:

答案 0 :(得分:1)

您可以使用momentJS将当前(本地)系统时间添加到所选日期:

select: function(start, end) {

    var today = moment();
    start.set({ hours: today.hours(), minute: today.minutes() });

    $('#ModalAdd #start').val(start.format('YYYY-MM-DD HH:mm:ss'));
    $('#ModalAdd #end').val(end.format('YYYY-MM-DD HH:mm:ss'));
    $('#ModalAdd').modal('show');
}

请参阅https://momentjs.com/docs/#/get-set/set/

另外值得一提的是startend已经是时刻了,所以你不需要像以前那样将它们再次包装在当前构造函数中。< / p>

如果你这样做,另一件需要考虑的事情是,你的日历是否有其他可用的视图,特别是议程风格的视图,可以在哪些选项上触发模态?如果是这样,那么您需要确保上面的时间操作代码仅在视图为&#34; month&#34;时运行,因为默认情况下,议程视图已经使用用户实际选择的时间日历。