Bootstrap日期时间选择器定位

时间:2015-02-27 12:06:29

标签: javascript jquery html css twitter-bootstrap

我在代码中添加了datetime选择器插件。它有效,但没有正确定位。当我专注于输入时,它显示在页脚,而不是输入附近。我应该检查什么?

 $(".form-date").datetimepicker({
   format: "dd.mm.yyyy",
   minView: 2,
   maxView: 4,
   autoclose: true,
   language: 'tr',
   pickerPosition: "bottom-left"
 });
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script type="text/javascript" src="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
<link rel="stylesheet" type="text/css" href="//maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css">

<div class="form-group row">
  <label for="Tarih" class="col-md-3 control-label">Tarih</label>
  <div class="col-md-9 input-append date form-date">
    <input type="text" class="form-control" name="Tarih" id="Tarih" value="" placeholder="Tarih">
    <span class="add-on"><i class="icon-th"></i></span>
  </div>
</div>

4 个答案:

答案 0 :(得分:0)

我认为没有&#39; pickerPosition:&#34;左下角&#34;&#39; Bootstrap Datetime Picker的选项。

http://eonasdan.github.io/bootstrap-datetimepicker/Options/

可能是造成问题。

答案 1 :(得分:0)

您的html参考代码中没有datetimepicker组件文件。您应该已经添加了js和css文件。

首先从the component website此处下载脚本,或从git克隆:

$ git clone git://github.com/smalot/bootstrap-datetimepicker.git

并在标题部分添加引用:

来源:

<script type="text/javascript" src="./jquery/jquery-1.8.3.min.js" charset="UTF-8"></script>

HTML:

<div class="form-group">
            <label for="dtp_input2" class="col-md-2 control-label">Date Picking</label>
            <div class="input-group date form_date col-md-5" data-date="" data-date-format="dd MM yyyy" data-link-field="dtp_input2" data-link-format="yyyy-mm-dd">
                <input class="form-control" size="16" type="text" value="" readonly>
                <span class="input-group-addon"><span class="glyphicon glyphicon-remove"></span></span>
                <span class="input-group-addon"><span class="glyphicon glyphicon-calendar"></span></span>
            </div>
            <input type="hidden" id="dtp_input2" value="" /><br/>
        </div>

答案 2 :(得分:0)

除了在共享代码段中缺少某些必需的资产(datetimepicker,moment等)外,您还使用了不赞成使用的选项,这些选项阻止了datepicker的显示。

您可以找到current options here

List of required assets here.

更新为以下内容:

  • format: 'dd.MM.YYYY'
  • minmaxView消失了,但是您可以在选项链接上检查viewMode(虽然没有min-max选项)。
  • autoclosekeepOpen(尽管默认情况下它设置为false,所以没有 需要)
  • languagelocale: 'tr'
  • pickerPositionwidgetPositioning {horizontal: 'left', vertical: 'bottom'}对象。

工作段:

$('.form-date').datetimepicker({
  format: 'dd.MM.YYYY',
  locale: 'tr',
  widgetPositioning: {
    horizontal: 'left',
    vertical: 'bottom'
  }
});
<link href="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/e8bddc60e73c1ec2475f827be36e1957af72e2ea/build/css/bootstrap-datetimepicker.css" rel="stylesheet" />
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/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://cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment-with-locales.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
<script src="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/e8bddc60e73c1ec2475f827be36e1957af72e2ea/src/js/bootstrap-datetimepicker.js"></script>

<div class="container">
  <div class="form-group row">
    <label for="Tarih" class="col-md-3 control-label">Tarih</label>
    <div class='input-group date form-date col-md-9 input-append'>
      <input type='text' class="form-control" placeholder="Tarih" />
      <span class="input-group-addon">
        <span class="glyphicon glyphicon-calendar"></span>
      </span>
    </div>
  </div>
</div>

答案 3 :(得分:0)

旧版本的 Bootstrap 日期时间选择器没有选项。但是您可以通过将 CSS 应用于下拉选择器来更改定位。

.bootstrap-datetimepicker-widget.dropdown-menu {
    inset: auto!important;
}

以下是更多详细信息的文档: https://bootstrap-datepicker.readthedocs.io/