Как всегда показывать дни на DatePicker, когда открыт?

Я использую eonasdan-bootstrap-datetimepicker:

<input type="text" class="form-control" ng-model="$ctrl.date" id="dateStart">
<script type="text/javascript">
    $("#dateStart").datetimepicker({
    format: 'ddd, D MMMM YYYY',
    showTodayButton: true
    });
</script>

Чего я хочу достичь, так это того, что каждый раз, когда я закрываю сборщик и снова открываю его, у меня всегда будет сборщик дней. Прямо сейчас, если я нахожусь в "месяцах выбора даты" и щелкаю снаружи, сборщик закроется, и если я снова открою его, он снова покажет представление по месяцам, но я хочу дни.

Я пробовал с:

on('dp.show', function(e) {
    $(".datepicker-days").show();
    $(".datepicker-months").hide();
    $(".datepicker-years").hide();
    $(".datepicker-decades").hide();
});

Это выглядит так, как будто это работает: если я закрою его во время просмотра месяцев и снова открою его, я получу указатель даты, но если отсюда я снова нажму на месяц, я получу годы выбора даты.

Любая помощь будет оценена.

РЕДАКТИРОВАТЬ: код здесь: http://jsfiddle.net/xrqkyypd/51/

2 ответа

Решение

Ответ довольно прост, используя события и viewMode функция.

Вы только должны проверить, что когда сборщик скрывается, вы сбрасываете его viewMode на что вы когда-нибудь захотите, в данном случае дни.

$('#myDatepicker').on('dp.hide', function(e) {
  $('#myDatepicker').data("DateTimePicker").viewMode('days')
});

Согласно документации, вы можете установить так:

<div class="container">
    <div class="col-sm-6" style="height:130px;">
        <div class="form-group">
            <div class='input-group date' id='datetimepicker9'>
                <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 () {
            $('#datetimepicker9').datetimepicker({
                viewMode: 'years' //days, weeks etc
            });
        });
    </script>
</div>

Для более подробной информации проверьте режим просмотра

Другие вопросы по тегам