datepicker禁用期货日期

时间:2019-02-26 11:49:14

标签: javascript jquery jquery-ui datapicker

我想使用datapicker禁用将来的日期(从后天开始),但是它不起作用。我尝试了3种解决方案:

  maxDate: 0

 maxDate: '0'

  maxDate: new Date();

所有这些都不起作用。有谁知道为什么不呢?这是我的代码:

 $('#datepicker').datepicker({
   format: "dd-mm-yyyy",
   maxDate: 0
 });

3 个答案:

答案 0 :(得分:0)

我假设您正在使用bootstrap-datepicker。在这种情况下,您应该使用endDate,而不是maxDate

如果您使用的是其他脚本,则可以将此信息添加到您的问题中。

答案 1 :(得分:0)

使用jQuery 3.3.1和jQuery UI 1.12.1,可以正常工作:

<p>Date: <input type="text" id="datepicker"></p>
$('#datepicker').datepicker({
  maxDate: new Date()
});

JS Fiddle demo

答案 2 :(得分:0)

如果您使用的是jQuery UI,请考虑以下事项:

http://api.jqueryui.com/datepicker/#option-maxDate

  

最大可选日期。设置为null时,没有最大值。

     

支持多种类型:

     
      
  • 日期:包含最大日期的日期对象。
  •   
  • 数量:从今天开始的天数。例如,2代表今天起两天,-1代表昨天。
  •   
  • 字符串:采用dateFormat选项定义的格式的字符串或相对日期。相对日期必须包含值和期间对;有效期限是"y"代表几年,"m"代表几个月,"w"代表几周,"d"代表几天。例如,"+1m +7d"代表从今天起一个月零七天。
  •   

我会尝试以下操作:

$(function() {
  $('#datepicker').datepicker({
    format: "dd-mm-yyyy",
    maxDate: 2
  });
});
<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>

<p>Date: <input type="text" id="datepicker"></p>