我正在使用jQuery timepicker和jQuery datepair来设置约会创建页面。我想将约会的总持续时间限制在3小时或其他任何时间。我无法弄清楚如何强制执行此操作。
HTML:
<div id="dateTimePicker">
<input type="text" class="date start"/>
<input type="text" class="time start"/> to
<input type="text" class="time end" id="timeEnd"/>
<input type="text" class="date end"/>
</div>
JS:
$('#dateTimePicker .time').timepicker({
'minTime': '6:00am',
'maxTime': '11:00pm',
'step': 15,
'showDuration': true,
'timeFormat': 'g:ia'
}).on('changeTime', function (e) {
var milliseconds = datepair.getTimeDiff();
// is the time more than 3 hours?
if (milliseconds > 10800000) {
console.log('time too big')
$('#dateTimePicker').timepicker('setTime', '10:15am');
}
});
我以为我可以检查一下changeTime事件,但是一旦发生就会触发一次点击。例如。如果我将时间更改为4小时的增量,那么在我将其重新更改为我正在寻找的范围之外的事件之前,事件将不会被调用。
即便如此,我仍然不确定如何设定结束时间。在jQuery timepicker的文档中,它说你可以使用'setTime',但是当使用datepair时不清楚该做什么。
我只想强制执行时间间隔的最长持续时间,我不知道如何
jsfiddle:https://jsfiddle.net/vmjo1aw6/2/
答案 0 :(得分:2)
我认为blur
是您正在寻找的事件,即更改
.on('changeTime', function (e)
到
.on('blur', function (e)