How to disable future dates in JavaScript Datepicker?



In order to disable future dates, you need to use maxDate and set the current date. Following is the JavaScript code −

Example

 Live Demo

<!DOCTYPE html> <html lang="en"> <head> <link rel="stylesheet" href="//code.jquery.com/ui/1.12.1/themes/base/jquery-ui.css"> <script src="https://code.jquery.com/jquery-1.12.4.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </head> <body> <p>The selected date is as follows: <input type="text" class="disableFuturedate"></p> <script>    $(document).ready(function () {       var currentDate = new Date();       $('.disableFuturedate').datepicker({       format: 'dd/mm/yyyy',       autoclose:true,       endDate: "currentDate",       maxDate: currentDate       }).on('changeDate', function (ev) {          $(this).datepicker('hide');       });       $('.disableFuturedate').keyup(function () {          if (this.value.match(/[^0-9]/g)) {           this.value = this.value.replace(/[^0-9^-]/g, '');       }     }); }); </script> </body> </html>

In order to run the above program, I have saved this file with the name index.html. Right click on this file and select option open with live server.

Output

This will run in any modern web browser automatically −

After that, click the mouse on text box, that will display the date picker as in the below screenshot −


Updated on: 2020-07-14T17:20:31+05:30

14K+ Views

Kickstart Your Career

Get certified by completing the course

Get Started
Advertisements