Bootstrap 日期选择器 3 始终打开

Bootstrap Date picker 3 Always open

我希望 bootstrap 日期选择器 3 始终保持打开状态。我已经尝试了所有以前的解决方案,但我想它们不适用于版本 3。我可以在 'dp.hide' 上显示它,但由于效率低下,它挂起了我的浏览器。

任何其他解决方案都值得赞赏。我不希望在浏览器上单击其他位置时关闭日历。

这是JavaScript代码

<script type="text/javascript">
    $(function () {
        $('#datetimepicker10').datetimepicker({
            viewMode: 'years',
            format: 'MM/YYYY',
            keepOpen: true
        }).on('dp.update', function () {
            $('#datetimepicker10').datetimepicker("show");
        });

        $('#datetimepicker10').data("DateTimePicker").show();

    });
</script>

这里是html

<div class="form-group">
    <div class='input-group date' id='datetimepicker10'>
        <input type='text' class="form-control" />
        <span class="input-group-addon">
            <span class="glyphicon glyphicon-calendar">
            </span>
        </span>
    </div>
</div>

不使用 input,而是在 div 中初始化日期并将 inline 设置为 true

$("#datetimepicker").datetimepicker({
    format: 'DD/MM/YYYY HH',
    inline: true,
    sideBySide: true
});
function showDate()
{
   console.log($('#datetimepicker').data("DateTimePicker").date());
}
.date
{
    max-width:200px
}
<link href="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/master/build/css/bootstrap-datetimepicker.css" rel="stylesheet"/>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment-with-locales.js"></script>
<script src="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/master/src/js/bootstrap-datetimepicker.js"></script>

<div class="date" id="datetimepicker"></div>
<button onclick="showDate()">Get Date</button>

如果需要始终显示多个日期时间选择器,请在初始化它们之前设置$.fn.datetimepicker.defaults.inline = true;。在这种情况下,无需在 options 中传递 inline: true

注意:注意格式设置。如果格式不包含时间,则不会显示时间组件。如果未设置,没问题。

如果您不想使用 inline mode you can always use the debug 选项。 有些东西对我来说很烦人,但如果它对你有用...

$('#myDatepicker').datetimepicker({
  debug: true
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
<link href="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/25c11d79/build/css/bootstrap-datetimepicker.min.css" rel="stylesheet" />


<br/>
<!--Space for the fiddle-->
<div class="container">
  <div class="row">
    <div class='col-sm-6'>
      <div class="form-group">
        <div class='input-group date' id='myDatepicker'>
          <input type='text' class="form-control" />
          <span class="input-group-addon">
                        <span class="glyphicon glyphicon-calendar"></span>
          </span>
        </div>
      </div>
    </div>
  </div>
</div>