bootstrap datetimepicker - 设置maxDate相对于现在?

问题描述 投票:3回答:3

我使用这个datetimepicker: http://eonasdan.github.io/bootstrap-datetimepicker/Options/ 基本上我想设置maxDate: moment(),即maxDate应限于现在。问题是,当datepicker打开时,maxDate不再是now()了。我想在每次显示datepicker时将maxDate设置为现在。

我想在可能的情况下全局强制执行它,而不是在每个datetimepicker()实例上指定它。有可能以某种方式使用moment.js给出相对日期吗?

看到这个小提琴: https://jsfiddle.net/0Ltv25o8/3281/ 我将maxDate设置为now。您将在页面加载后的分钟内看到,您将无法使用箭头按钮选择当前分钟。

javascript twitter-bootstrap momentjs eonasdan-datetimepicker maxdate
3个回答
4
投票

如何使用datepicker插件的自定义版本?

我添加了新的参数maxDateNow(更好的名字的任何想法?),允许选择日期/时间到现在的时间。

$('#datetimepicker1').datetimepicker({maxDateNow: true, format:'DD/MM/YYYY HH:mm'});

看到这个fiddle


2
投票

您可以收听dp.show事件,这样您就可以在每次选择器显示时将maxDate更改为当前时间。这是一个代码示例:

$('#datetimepicker1').datetimepicker({
  maxDate: moment(), 
  format:'DD/MM/YYYY HH:mm'
}).on('dp.show', function(){
  $('#datetimepicker1').data("DateTimePicker").maxDate(moment());
});
<link href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/css/bootstrap.css" rel="stylesheet"/>
<link href="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.37/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.13.0/moment.min.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.6/js/bootstrap.js"></script>
<script src="//cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/4.17.37/js/bootstrap-datetimepicker.min.js"></script>

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

0
投票

我使用了喜欢这个,它将最小日期设置为今天的日期

 $( '#Field_ID' ).datepicker({dateFormat: 'dd-MM-yy', minDate : new Date()});
© www.soinside.com 2019 - 2024. All rights reserved.