Я пытаюсь отключить определенные часы в конкретных датах с помощью bootstrap-datetimepicker.
Я прочитал в документах http://eonasdan.github.io/bootstrap-datetimepicker/Functions/#disabledtimeintervals функция disabledTimeIntervals, которая соответствует моим потребностям.
Я пробовал с несколькими средами, установив их следующим образом (v4.17.42):
$ bower install eonasdan-bootstrap-datetimepicker#latest --save
и я попытался установить версию 4.14.30 (с теми же результатами)
$ bower install eonasdan-bootstrap-datetimepicker#4.14.30 --save
После установки всех компонентов (jquery, bootstrap, moment.js и eonasdan-bootstrap-datetimepicker) я получаю корректную работу datetimePicker.
Проблемы начинаются здесь:
Когда я пытаюсь отключить диапазон часов, я не получаю ошибок, и когда я нажимаю стрелки часов, средство выбора не позволяет мне изменить час на отключенный, но когда я нажимаю номер часа, чтобы увидеть все часы в день теоретически "отключенный" час не отображается как отключенный и я могу его выбрать!
Мой код:
<html>
<head>
<script type="text/javascript" src="bower_components/jquery/dist/jquery.min.js"></script>
<script type="text/javascript" src="bower_components/moment/min/moment.min.js"></script>
<script type="text/javascript" src="bower_components/bootstrap/dist/js/bootstrap.min.js"></script>
<script type="text/javascript" src="bower_components/eonasdan-bootstrap-datetimepicker/build/js/bootstrap-datetimepicker.min.js"></script>
<link rel="stylesheet" href="bower_components/bootstrap/dist/css/bootstrap.min.css" />
<link rel="stylesheet" href="bower_components/eonasdan-bootstrap-datetimepicker/build/css/bootstrap-datetimepicker.min.css" />
</head>
<body>
<div class="container">
<div class="row">
<div class='col-sm-6'>
<div class="form-group">
<div class='input-group date' id='datetimepicker1'>
<input type='text' class="form-control" />
<span class="input-group-addon">
<span class="glyphicon glyphicon-calendar"></span>
</span>
</div>
</div>
</div>
<script type="text/javascript">
$(function () {
$('#datetimepicker1').datetimepicker({
debug: true,
format: 'YYYY-MM-DD HH:mm:ss',
sideBySide: true,
disabledTimeIntervals: [
[moment('2016-12-31 21:59:59'), moment('2016-12-31 23:00:00')]
]
});
});
</script>
</div>
</div>
</body>
</html>
Я подозреваю, что это проблема, потому что тот же код работает, как и ожидалось, в этой скрипте: http://jsfiddle.net/gLzvqqrj/3/
Кто-нибудь знает, как проверить версию datetimepicker, используемую в скрипке? Или лучше, почему мой код не работает?
/*! version : 4.14.30
... Я понятия не имею, почему ваш код не работает. Я бы предложил переместить элементы скрипта непосредственно перед текстом</body>
, а не вкладывать их внутрьdiv
. - person Heretic Monkey   schedule 29.12.20164.17.37
. - person VincenzoC   schedule 29.12.2016