How to disable past dates from today in bootstrap datetimepicker? [duplicate]
Asked Answered
Z

3

28

Unable to disable the past dates in bootstrap datetimepicker

HTML

<br/>
<div class="row">
    <div class="col-md-12">
         <h6>Datetimepicker</h6>

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

    </div>
</div>

JavaScript

$(function () {
    $('#datetimepicker').datetimepicker();
 });

I also used startDate atrribute.But no use.

Fiddle here

Ziwot answered 25/11, 2015 at 11:22 Comment(0)
A
53

startDate option use in bootstrap-datepicker same option not mentioned anywhere in bootstrap-datetimepicker/Options/ doc it has minDate option for that

 $(function () {
     $('#datetimepicker').datetimepicker({  
         minDate:new Date()
      });
 });

FIddle

Alleluia answered 25/11, 2015 at 11:28 Comment(3)
picking a time by drill down is disabled. How to solve this ? check the fiddle example you have pointed above.Starknaked
combination of previous date time is disable, you can choose future date timeAlleluia
Yesterday, i solved the issue. the point is new Date() will make the current HH:mm tt as sealing time. instead we should point the hours directly like 'var date = new Date(); var startDate = new Date(date.getFullYear(), date.getMonth(), date.getDate(), 0, 0, 0); var endDate = new Date(date.getFullYear(), date.getMonth() + 1, date.getDate(), 23, 59, 59);' jsfiddle.net/65vaoqkw/7/#&togetherjs=zELfaP3wpzStarknaked
I
12

You can do it like this:

$(function () {
   var date = new Date();
   var today = new Date(date.getFullYear(), date.getMonth(), date.getDate());
   $('#datetimepicker').datetimepicker({ 
      minDate: today
   });
});

Another solution:

$(function () { 
  var date = new Date();
  date.setDate(date.getDate()-1);
  $('#datetimepicker').datetimepicker({ 
   startDate: date
  });
});
Issiah answered 25/11, 2015 at 12:14 Comment(2)
How to disable all dates after today?Cachepot
Just change minDate to maxDate: todayIssiah
D
5

I have used your fiddle and change it with following code which disables all the past dates, its working perfectly.

Here is the Fiddle and Code -

$(function () {
   $('#datetimepicker').datetimepicker({
      minDate : moment()
   });
});
Defensive answered 25/11, 2015 at 11:50 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.