简体   繁体   中英

Set minDate to current date in DateRangePicker

I am using DateRangePicker for dates. I was trying to disable past dates by setting min date to current date as below.It does not do any thing.

$('.daterange-single').daterangepicker({ 
        singleDatePicker: true,
        minDate: today
    });

but it is working fine when you give actual date as below.

$('.daterange-single').daterangepicker({ 
        singleDatePicker: true,
        minDate: "7/11/2019"
    });

Please help me how to set minDate to current date in DateRangePicker

You can set minDate at current date in daterangepicker. You can try the below code:

 $(function() { $('input[name="birthday"]').daterangepicker({ singleDatePicker: true, showDropdowns: true, minYear: 1901, minDate: new Date(), maxYear: parseInt(moment().format('YYYY'),10) }); }); 
 <script type="text/javascript" src="https://cdn.jsdelivr.net/jquery/latest/jquery.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/momentjs/latest/moment.min.js"></script> <script type="text/javascript" src="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.min.js"></script> <link rel="stylesheet" type="text/css" href="https://cdn.jsdelivr.net/npm/daterangepicker/daterangepicker.css" /> <input type="text" name="birthday" /> 

set the value of today to the current date from moment moment()

var today = moment()

or simply to a date object

var today = new Date()

 $('#datetimepicker').datetimepicker({ minDate: moment() }); 
 <link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css" rel="stylesheet" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.8.4/moment.min.js"></script> <link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/3.1.3/css/bootstrap-datetimepicker.min.css" rel="stylesheet" /> <script src="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-datetimepicker/3.1.3/js/bootstrap-datetimepicker.min.js"></script> <input type="text" id="datetimepicker"> 

you can try setting a variable to contain today's date and use it as minDate

var today = new Date();
var dd = today.getDate();
var mm = today.getMonth()+1; //As January is 0.
var yyyy = today.getFullYear();
var todayDateString = dd+"/"+mm+"/"+yyyy;

$('.daterange-single').daterangepicker({ 
    singleDatePicker: true,
    minDate: todayDateString
});

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM