I'm new in Jquery. Here is my problem. I would like to disable the time passed in today but not affect tomorrow time. For example now is 31/03/2016 3:00pm, user cannot choose the time for 31/03/2016 2:00pm but able to choose time for 01/04/2016 2:00pm
Here is my jquery script code:
var dateTime;
$('#datepicker').datetimepicker({
timepicker:false,
format:'Y-m-d',
formatDate:'Y-m-d',
minDate: 0, // yesterday is minimum date
maxDate: false, // and tommorow is maximum date calendar
onSelect: function() {
dateTime = $(this).datetimepicker('getDate').getDate();
}
});
if(dateTime == new Date().getDate()){
$('#reserv_time').datetimepicker({
datepicker:false,
format:'h:i A',
step:5,
minTime: {hour: new Date().getHours(), minute: new Date().getMinutes()}
})
}
else {
$('#reserv_time').datetimepicker({
datepicker:false,
format:'h:i A',
step: 5
})
};
Here is my php code:
<tr>
<td width="24%">Date</td>
<td><input type="text" id="datepicker" name="reserv_date" value="<?php echo date('Y-m-d');?>" /></td>
</tr>
<tr>
<td>Time</td>
<td><input type="text" name="reserv_time" id="reserv_time" value="<?php echo date('h:i A');?>"/>
Thanks for help a lot.
Add minTime
also,
$('#datepicker').datetimepicker({
timepicker:false,
format:'Y-m-d',
formatDate:'Y-m-d',
minDate: 0, // yesterday is minimum date
minTime: 0, //Added Here
maxDate: false, // and tommorow is maximum date calendar
onChangeDateTime : enable,
onSelect: function() {
dateTime = $(this).datetimepicker('getDate').getDate();
}
});
var enable = function(currentDateTime){
if(currentDateTime > new Date()){
this.setOptions({
minTime:'0:00'
});
}
else{
this.setOptions({
minTime: 0
});
}
};
Thank for everyone to solve this question. I had found the solution.
var dateTime;
$('#reserv_date').datetimepicker({
timepicker: false,
format:'Y-m-d',
formatDate:'Y-m-d',
minDate: 0,
yearStart: 2015,
maxDate: false
});
$('#reserv_date').on("change",function(){
dateTime = $('#reserv_date').val();
var d = new Date();
var month = d.getMonth()+1;
var day = d.getDate();
var output = d.getFullYear() + '-' + (month<10 ? '0' : '') + month + '-' +
(day<10 ? '0' : '') + day;
if(dateTime == output){
$('#reserv_time').datetimepicker({
datepicker:false,
format:'h:i A',
formatTime:'h:i A',
step:15,
minTime: 0
})
}
else {
$('#reserv_time').datetimepicker({
datepicker:false,
format:'h:i A',
formatTime:'h:i A',
step:15,
minTime: false
})
}
});