defaultDate和minDate与Bootstrap Datetimepicker

时间:2015-07-31 13:26:28

标签: jquery twitter-bootstrap bootstrap-datetimepicker

我希望默认情况下将选择器设置为未来一个月。这很好用:

<script type="text/javascript">
  $(function () {
    $('#enddatepicker').datetimepicker({
      defaultDate: moment().add(1, 'M').toDate(),
      locale: 'de',
      format: 'DD.MM.YYYY'
    });
  });
</script>

但是,我也希望日期不会在明天之前。所以我尝试添加一个minDate选项:

<script type="text/javascript">
  $(function () {
    $('#enddatepicker').datetimepicker({
      minDate: moment().add(1, 'd').toDate(),
      defaultDate: moment().add(1, 'M').toDate(),
      locale: 'de',
      format: 'DD.MM.YYYY'
    });
  });
</script>

但是,现在默认日期设置为minDate(即明天)。我可以独立于最短日期设置默认日期吗?

3 个答案:

答案 0 :(得分:19)

查看GitHub上的代码(第1674行),如果将选项useCurrent设置为false,则可能无法覆盖您的默认值:

 <script type="text/javascript">
   $(function () {
     $('#enddatepicker').datetimepicker({
       useCurrent: false,
       minDate: moment().add(1, 'd').toDate(),
       defaultDate: moment().add(1, 'M').toDate(),
       locale: 'de',
       format: 'DD.MM.YYYY'
     });
   });
 </script>

答案 1 :(得分:0)

我会raise an issue in github为此,因为minDate不应该覆盖defaultDate。在平均时间内,您所能做的就是明确设置值:

&#13;
&#13;
$(function () {
    $('#enddatepicker').datetimepicker({
         minDate: moment().add(1, 'd').toDate(),
         locale: 'de',
         format: 'DD.MM.YYYY'
    });
     $('#enddatepicker').val(moment().add(1, 'M').format('DD.MM.YYYY'));
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.0/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.9.0/moment-with-locales.js"></script>
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<script src="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/e8bddc60e73c1ec2475f827be36e1957af72e2ea/src/js/bootstrap-datetimepicker.js"></script>
<link href="https://cdn.rawgit.com/Eonasdan/bootstrap-datetimepicker/e8bddc60e73c1ec2475f827be36e1957af72e2ea/build/css/bootstrap-datetimepicker.css" rel="stylesheet"/>

<div class="container">
  <div class="row">
    <div class="demo col-xs-6">
       <input class="form-control" id="enddatepicker"/>
    </div>
  </div>
</div>
&#13;
&#13;
&#13;

答案 2 :(得分:-2)

尝试使用Start Date属性,在检查了我的jquery之后我发现它没有minDate参数但是startDate参数来处理minDate.it对你有效。

startDate:new Date(),

skype @ lokesh7676获得更多帮助