DatePicker отключить фьючерсные даты - PullRequest
0 голосов
/ 26 февраля 2019

Я бы хотел отключить будущие даты (начиная с послезавтра) с помощью datapicker, но он не работает.Я попробовал 3 решения:

  maxDate: 0

и

 maxDate: '0'

и

  maxDate: new Date();

Все они не работают.У кого-нибудь есть идеи, почему бы и нет?Вот мой код:

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

Ответы [ 3 ]

0 голосов
/ 26 февраля 2019

С jQuery 3.3.1 и jQuery UI 1.12.1 это прекрасно работает:

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

Демонстрация JS Fiddle

0 голосов
/ 27 февраля 2019

Если вы используете jQuery UI, учтите следующее:

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

Максимально выбираемая дата.Если установлено значение NULL, максимальное значение не указывается.

Поддерживается несколько типов:

  • Дата : объект даты, содержащий максимальную дату.
  • Число : количество дней с сегодняшнего дня.Например, 2 представляет два дня с сегодняшнего дня, а -1 - вчерашний.
  • String : строка в формате, определенном параметром 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>
0 голосов
/ 26 февраля 2019

Я предполагаю, что вы используете bootstrap-datepicker .Если это так, вы должны использовать endDate, а не maxDate.

Если вы используете другой скрипт, было бы полезно добавить эту информацию к вашему вопросу.

...