我有一个使用pickadate.js的日期和时间选择器,我试图做动态时间禁用,这是我有的
var allUserSchedules = [
["26 December, 2017", {from: [00,00], to: [01,00]}],
["29 December, 2017", {from: [16,00], to: [19,00]}]
];
var timePickerInput = $('#bookingTime').pickatime();
$('#bookingDate').on('change', function() {
var timePicker = timePickerInput.pickatime('picker');
var timeSlotTaken = [];
var generateDate;
generateDate = $('#bookingDate').val();
for (i = 0; i < allUserSchedules.length; i++) {
if (generateDate == allUserSchedules[i][0]) {
timeSlotTaken.push(allUserSchedules[i][1]);
}
}
console.log(timeSlotTaken);
$('#bookingTime').show();
timePicker.set('disable', timeSlotTaken);
timePicker.set('interval', 60);
});
流程是,用户选择日期 - &gt; JS检查数组中输入日期和日期之间是否有相同的日期,并返回相同的日期 - &gt;从那些相同的日期获得时间段
当我首先选择一个日期时它按预期工作,但是,下次我这样做时,从第一个选定日期开始的时间段也在那里,它不会刷新。任何人以前都经历过这个问题或者解决了这个问题吗?
This是我能找到的唯一一个似乎与我没有解决方案相同的问题,尽管在该线程中问题是日期而不是时间。