【问题标题】:Insert label inside bootstrap datetimepicker在引导程序 datetimepicker 中插入标签
【发布时间】:2017-05-30 18:30:51
【问题描述】:

有没有办法将小时/分钟标签添加到 eonasdan 的引导 datetimepicker 中,如屏幕截图所示?

【问题讨论】:

  • 您可能必须自己调整它,但维护者可能会欢迎由此产生的 PR。

标签: javascript css bootstrap-datetimepicker eonasdan-datetimepicker


【解决方案1】:

正如 ceejayoz 在 cmets 中所述,datetimepicker 不包含此类功能。该库是开源的,您可以按照建议自定义代码和外观。

另一种方法是在显示选择器时在小时和分钟行下动态添加一行。您可以在dp.show 事件中添加一个侦听器,然后使用 jQuery 来操作选取器 HTML。

这是一个工作示例:

$('#datetimepicker1').datetimepicker({
  format: 'HH:mm'
});

$('#datetimepicker1').on('dp.show', function(){
  // Check timepicker is visible
  if( $('.timepicker').is(':visible') ){
    // Get rows of the timepicker
    var rows = $('.timepicker>.timepicker-picker>table>tbody>tr');
    // Create html for custom text
    var tr = '<tr class="customText"><td>hours</td><td class="separator"></td><td>minutes</td></tr>';
    // Add custom HTML inside component
    $(rows[1]).after(tr);
  }
});
.bootstrap-datetimepicker-widget table tr.customText td {
  height: 24px;
  line-height: 24px;
}
<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" rel="stylesheet"/>
<link href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/css/bootstrap-datetimepicker.css" rel="stylesheet"/>

<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.47/js/bootstrap-datetimepicker.min.js"></script>


<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>

datetimepicker 有 debug 选项,如果设置为 true

将导致日期选择器在blur 事件之后保持打开状态。

【讨论】:

  • 附带问题 - 您如何检查小部件的呈现 HTML?一旦小部件展开并且您在小时内右键单击 -> Inspect Element with Firebug,小部件将折叠并且 Firebug HTML 仅显示未展开的小部件 HTML。
  • @joym8 我已经编辑了我的答案,要检查组件的渲染 HTML,您可以将 debug 选项设置为 true
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-08
  • 1970-01-01
  • 1970-01-01
  • 2020-10-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多