timepicker最小时间增加1小时

问题描述 投票:0回答:2

在我的应用中,用户可以从6:00 AM到8:00 PM进行约会。我正在使用timepicker来做到这一点。我正在设置minTime: 6:00 AMmaxTime : 8:00 PM。这可行,但是当用户当前时间在6AM到7PM之间时,我实际上想将minTime增加1小时。如果是6:01 AM,则用户应该不能选择6AM,而应建议使用7AM。在7:01 PM,剩下的唯一选择时间应该是8PM。

//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

});
});
javascript jquery timepicker
2个回答
0
投票

为我工作。

//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

});
});

0
投票

使用new Date().getHours()获取小时。您不能使用<>来字符串

var today = new Date();
var hr = today.getHours();
var min = today.getMinutes();
var time = hr > 12 ? "pm" : "am"

if(hr > 6 && hr < 8) {
  minTime = hr + 1;
}
else {
  minTime = hr
}
minTime = `${minTime}:${min}${time}`

//time picker
$(function () {
$('.timepicker').timepicker({
timeFormat: 'h:mm p',
interval: 60,
minTime: minTime,
maxTime: '8:00pm',
dynamic: false,
dropdown: true,
scrollbar: true
});
© www.soinside.com 2019 - 2024. All rights reserved.