使用DateTimepicker我想将商店营业时间设置为整周的10:30 AM(例如)。使用这段代码我可以限制小时数。
var curentDate = new Date();
var lastDate = new Date();
lastDate.setDate(curentDate.getDate() + 6);
$('#txtdate').datetimepicker({
inline: true,
sideBySide: true,
maxDate: lastDate,
minDate: curentDate,
enabledHours: HoursArray()
});
我将此设置为15分钟增量,但我不确定如何设置一周内所有日期的分钟数。此外,我想在每天上午10:30之前禁用会议记录。
有人可以指导我吗?
答案 0 :(得分:2)
我没有看到图书馆暴露任何设置每天默认时间的方法,但您可以使用events API和date()方法控制自己。你可以听取改变事件这样:
$(document).on('dp.change', manipulateTime);
该活动会显示日历的new date
和oldate
。如果日期不同,则可以使用date()
方法更改新日期的时间。
function manipulateTime(e){
if(!e.date.isSame(e.oldDate, "day")){
$(e.target).data("DateTimePicker").date(e.date.set({
'hour' : 10,
'minute' : 30
}));
}
}
事件触发时会返回三个必要的引用,date
,olddate
,target
。
调用DateTimePicker函数
- 请注意,根据他们的文档,您可以使用他们的方法:所有功能都可以通过数据属性访问,例如: $( '#的DateTimePicker')。数据( “的DateTimePicker”)。FUNCTION()
使用活动
当您致电dp.change
事件时。回调函数将返回具有以下可访问属性的对象e
:
e
属性
e = {
date, //date the picker changed to. Type: moment object (clone)
oldDate //previous date. Type: moment object (clone) or false in the event of a null,
target // targeted date picker,
and more...
}
答案 1 :(得分:0)
这是我为解决这两个问题所做的最后一件事
var futureHour = (new Date(td.date)).getHours();
var futureMin = (new Date(td.date)).getMinutes();
//This is to re-loop time when user tries to select time below 1st pickup time
if(futureHour <= storeOpenHour && futureMin < storeOpenMinutes){
$(td.target).data("DateTimePicker").date(td.date.set({
'hour' : storeOpenHour,
'minute' : storeOpenMinutes
}));
}
//This is to select 1st pickup time on day change
if(!td.date.isSame(td.oldDate, "day")){
$(td.target).data("DateTimePicker").date(td.date.set({
'hour' : storeOpenHour,
'minute' : storeOpenMinutes
}));
}