我使用这个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。您将在页面加载后一分钟内看到,您无法使用箭头按钮选择当前分钟。
答案 0 :(得分:4)
如何使用datepicker插件的自定义版本?
我添加了新参数maxDateNow
(更好名称的任何想法?),允许选择截止日期/时间。
$('#datetimepicker1').datetimepicker({maxDateNow: true, format:'DD/MM/YYYY HH:mm'});
请参阅此fiddle
答案 1 :(得分: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>
&#13;
答案 2 :(得分:0)
我使用了Liked This,它将min Date设置为今天的日期
$( '#Field_ID' ).datepicker({dateFormat: 'dd-MM-yy', minDate : new Date()});