Использую популярный плагин datetimepicker для выбора даты и времени. В нем есть метод allowTimes, где указываются разрешенные к выбору часы, к примеру:
jQuery(".datetimepicker").datetimepicker({
timepicker: true,
allowTimes: [
'12:00', '12:30', '13:00'
]
});
Как реализовать автоматом список разрешенных к выбору часов из указанного пользователем диапазона, к примеру 12:30 - 14:00 – где массив, будет следующим ['12:30', '13:00', '13:30', '14:00']?
Используя библиотеку Moment.js можно так. Сама функция add( ).
var timeStart = '12:30';
var timeEnd = '14:00';
var allowTimes = [];
while (timeStart !== timeEnd) {
allowTimes.push(timeStart);
timeStart = moment(timeStart, 'HH:mm').add(30, 'm').format('HH:mm');
}
allowTimes.push(timeEnd);
console.log(allowTimes);
<script src="https://unpkg.com/moment@2.20.1/moment.js"></script>
Не знаю какую версию вы использовали? Или что то еще, но вот посмотрите здесь. Все именно так как вы хотели.
$(document).ready(function(){
$(".datetimepicker").datetimepicker({
timepicker: true,
allowTimes: [
'12:00', '12:30', '13:00','13:30','14:00',
'14:30', '15:00', '15:30', '16:00', ]
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.16/jquery.datetimepicker.full.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.16/jquery.datetimepicker.css">
<input type="text" class="datetimepicker" />
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости