JQuery datePicker: дата начала / окончания должна быть в течение одного года - PullRequest
1 голос
/ 23 апреля 2010

Так что, если моя дата начала: 04/22/2010, тогда мой выбор даты окончания может быть до 04/22/2011, а после 04/22/2011 все даты отключены.

Вот что у меня есть для даты начала и окончания выбора:

$(document).ready(function () {      
  $('#endDate').datepicker({ showOn: 'button', 
      buttonImage: '../images/Calendar.png', 
      buttonImageOnly: true, onSelect: function () { }, 
      onClose: function () { $(this).focus(); } 
    }); 

  $('#startDate').datepicker({ showOn: 'button', 
      buttonImage: '../images/Calendar.png', 
      buttonImageOnly: true, onSelect: 
        function (dateText, inst) { 
          $('#endDate').datepicker("option", 'minDate', new Date(dateText)); 
        } 
      , 
      onClose: function () { $(this).focus(); } 
    }); 
}); 

1 Ответ

1 голос
/ 23 апреля 2010

Вы можете установить опцию maxDate одновременно, например, так:

$(document).ready(function () {      
  $('#endDate').datepicker({ showOn: 'button', 
      buttonImage: '../images/Calendar.png', 
      buttonImageOnly: true, onSelect: function () { }, 
      onClose: function () { $(this).focus(); } 
  }); 

  $('#startDate').datepicker({ showOn: 'button', 
      buttonImage: '../images/Calendar.png', 
      buttonImageOnly: true, 
      onSelect: function (dateText, inst) { 
          var nyd = new Date(dateText);
          nyd.setFullYear(nyd.getFullYear()+1);
          $('#endDate').datepicker("option", { minDate: new Date(dateText), 
                                               maxDate: nyd });
      }, 
      onClose: function () { $(this).focus(); } 
  }); 
}); ​

Вы можете поиграть с рабочей демо здесьполучает дату, добавляет год (не используйте .getYear / .setYear, они устарели) и использует эту дату для установки свойства maxDate для другого средства выбора даты.Если вам интересно, есть полезный поддерживаемый список javascript Date методов здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...