如何限制日期选择器的年份范围?

时间:2014-05-06 19:18:48

标签: javascript jquery forms date-format

我正在为datepicker使用以下脚本。 目前,我通过提及“年度:2014:2015年”来限制最大年份。这看起来像是一本手工作品。但我想要一个可以从今天起自动设置1年的代码。

$<script>
  $(function() {

    $( "#checkin" ).datepicker({
      defaultDate: "+2d",
      yearRange: '2014:2015',
      changeMonth: true,dateFormat: 'dd/mm/yy',
                minDate: 1,
      numberOfMonths: 1,
      onClose: function( selectedDate ) {
        $( "#checkout" ).datepicker( "option", "minDate", selectedDate );
      }
    });

    $( "#checkout" ).datepicker({
      defaultDate: "+3d",dateFormat: 'dd/mm/yy',
      yearRange: '2014:2015',
                minDate: 2,
      changeMonth: true,
      numberOfMonths: 1,
      onClose: function( selectedDate ) {
        $( "#checkin" ).datepicker( "option", "maxDate", selectedDate );
      }
    });

  }); 
  </script>

3 个答案:

答案 0 :(得分:4)

var year = (new Date).getFullYear();
$( "#datepicker" ).datepicker({
    minDate: new Date(year, 0, 1),
    maxDate: new Date(year+1, 11, 31)
});

答案 1 :(得分:1)

要设置可以选择的最长日期,您可以使用maxDate选项

maxDate: '+1y' // one year from today

FIDDLE

showYear设置为true时,这也会限制yearRange。

答案 2 :(得分:1)

查看此处的文档http://api.jqueryui.com/datepicker/#option-yearRange

yearRange: '1950:2013', // specifying a hard coded year range

或者这样

yearRange: "-100:+0", // last hundred years