Javascript 计时器选择器将最小时间增加1小时

Javascript 计时器选择器将最小时间增加1小时,javascript,jquery,timepicker,Javascript,Jquery,Timepicker,在我的应用程序中,用户可以从早上6:00到晚上8:00预约。我过去经常这么做。我正在设置minTime:6:00am和maxTime:8:00pm。这是可行的,但当用户当前时间在早上6点到晚上7点之间时,我实际上想将minTime增加1小时。如果是早上6:01,用户应该不能选择早上6点,但应该建议改为早上7点。晚上7:01,剩下的唯一时间是晚上8点 //current date var dateToday = new Date(); //get time in US format //cons

在我的应用程序中,用户可以从早上6:00到晚上8:00预约。我过去经常这么做。我正在设置
minTime:6:00am
maxTime:8:00pm
。这是可行的,但当用户当前时间在早上6点到晚上7点之间时,我实际上想将minTime增加1小时。如果是早上6:01,用户应该不能选择早上6点,但应该建议改为早上7点。晚上7:01,剩下的唯一时间是晚上8点

//current date
var dateToday = new Date(); 
//get time in US format
//console.log(dateToday.toLocaleTimeString('en-US'));
var timeNow = dateToday.toLocaleTimeString('en-US');
// expected output: 1:15:30 AM
//get time in 12H format
//console.log(dateToday.toLocaleTimeString('it-IT'));
// expected output: 01:15:30

if(timeNow > '6:00:00 AM'&& timeNow < '8:00:00 PM'){
  var minTime = timeNow + 1:00:00;
}else{
  var mintime = '6:00am';
}

//time picker
$(function () {
$('.timepicker').timepicker({
timeFormat: 'h:mm p',
interval: 60,
minTime: minTime,
maxTime: '8:00pm',
dynamic: false,
dropdown: true,
scrollbar: true

});
});
//当前日期
var dateToday=新日期();
//以美国格式获取时间
//console.log(dateToday.toLocaleTimeString('en-US');
var timeNow=dateToday.toLocaleTimeString('en-US');
//预期输出:凌晨1:15:30
//以12H格式获取时间
//log(dateToday.toLocaleTimeString('it-it');
//预期产量:01:15:30
如果(timeNow>'6:00:00 AM'和&timeNow<'8:00:00 PM'){
var minTime=timeNow+1:00:00;
}否则{
var mintime='6:00am';
}
//时间选择器
$(函数(){
$('.timepicker').timepicker({
时间格式:“h:mm p”,
间隔时间:60,
minTime:minTime,
maxTime:'8:00pm',
动态:错误,
下拉列表:正确,
滚动条:对
});
});
对我有用

//date picker
var dateToday = new Date(); 
//get time in US format
//console.log(dateToday.toLocaleTimeString('en-US'));
var timeNow = dateToday.toLocaleTimeString('en-US');
// expected output: 1:15:30 AM
//get time in 12H format
//console.log(dateToday.toLocaleTimeString('it-IT'));
// expected output: 01:15:30


if(timeNow > '4:00:00 AM'&& timeNow < '8:00:00 PM'){

//add two hours
var dtndate = new Date(); 
dtndate.setHours(dtndate.getHours() + 2);
var minTime = dtndate.toLocaleTimeString('en-US');

}else{
  var minTime = '6:00am';
}


//time picker
$(function () {
$('.timepicker').timepicker({
timeFormat: 'h:mm p',
interval: 60,
minTime: minTime,
maxTime: '8:00pm',
dynamic: false,
dropdown: true,
scrollbar: true

});
});
//日期选择器
var dateToday=新日期();
//以美国格式获取时间
//console.log(dateToday.toLocaleTimeString('en-US');
var timeNow=dateToday.toLocaleTimeString('en-US');
//预期输出:凌晨1:15:30
//以12H格式获取时间
//log(dateToday.toLocaleTimeString('it-it');
//预期产量:01:15:30
如果(timeNow>'4:00:00 AM'和&timeNow<'8:00:00 PM'){
//再加两个小时
var dtndate=新日期();
dtndate.setHours(dtndate.getHours()+2);
var minTime=dtndate.toLocaleTimeString('en-US');
}否则{
var minTime='6:00am';
}
//时间选择器
$(函数(){
$('.timepicker').timepicker({
时间格式:“h:mm p”,
间隔时间:60,
minTime:minTime,
maxTime:'8:00pm',
动态:错误,
下拉列表:正确,
滚动条:对
});
});
使用
新日期().getHours()
获取小时数。您不能使用
编辑字符串。这意味着您需要将它们转换为数字。因为你只需要一个小时来比较,那么就得到这个小时并进行比较。例如:

var today=新日期();
var hr=today.getHours();
var min=today.getMinutes();
var时间=小时>=12?“pm”:“am”;
如果(hr>6&&hr<8){
minTime=hr+1;
}
否则{
分钟=小时
}
minTime=`${minTime>12?minTime-12:minTime}:${min}${time}`
//时间选择器
$(函数(){
$('.timepicker').timepicker({
时间格式:“h:mm p”,
间隔时间:60,
minTime:minTime,
maxTime:'8:00pm',
动态:错误,
下拉列表:正确,
滚动条:对
});