当用户选择显示过去时间的时间时,请说正确知道是上午10点,但不应在上午10点(现在)以下显示任何时间,但是,如果用户选择第二天或第二天的其他时间,则开始时间应为上午8点直到晚上8点,这是过程。
用户选择以下格式的日期:2019-01-17,现在基于该日期,我们显示ajax信息,并且用户现在可以基于该信息选择时间。
这是整个辣酱玉米饼馅开始的地方...此时间必须基于当前时间(所选日期为当前时间),该时间只能显示当前时间加上一个小时,例如现在是上午10点,那么您可以选择的时间为11,12,13,14 ...等
但是,如果您从当天选择其他日期,那么您可以选择的时间从上午9点到晚上8点...
目前我只有这个:
$(_TimeSelector).datetimepicker({
lang : 'en',
datepicker: false,
format : 'H:s',
allowTimes:[
'09:00', '10:00', '11:00', '12:00', '13:00', '14:00', '15:00', '16:00', '17:00', '18:00', '19:00'
],
minDate:0
});
还有一个问题,我不知道如何根据所选日期为allowTimes
构建数组...
任何指导将不胜感激。
答案 0 :(得分:0)
尝试一下。
var times = [ '09:00','10:00', '11:00', '12:00', '13:00', '14:00', '15:00', '16:00', '17:00', '18:00', '19:00'];
jQuery('#datetimepicker').datetimepicker({
format:'Y/m/d H:i',
allowTimes:times,
onSelectDate:function(dp){
var date = new Date().dateFormat('Y/m/d');
if( dp.dateFormat('Y/m/d')==date ){
var timeNow =dp.dateFormat('H:i');
var new_times = times.filter(function(x) {
return x > timeNow ;
});
this.setOptions({
allowTimes:new_times
});
}
else{
this.setOptions({
allowTimes:times
});
}
}
});
.dt{
margin-top:200px;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input class="dt" type="text" id="datetimepicker"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.0.0-alpha/css/bootstrap.css" rel="stylesheet">
<link rel="stylesheet" type="text/css" href="https://www.jqueryscript.net/demo/Clean-jQuery-Date-Time-Picker-Plugin-datetimepicker/jquery.datetimepicker.css"/>
<script src="https://www.jqueryscript.net/demo/Clean-jQuery-Date-Time-Picker-Plugin-datetimepicker/jquery.datetimepicker.js"></script>