2016-02-08 7 views
0

Я пытался установить maxDate как currentDate, но, к сожалению, год выпадающее меню не обновляется. Ниже есть то, что у меня есть.set maxDate as currentDate in jquery-ui datepicker

var currentDate=new Date(); 
 
var minyear=currentDate.getFullYear() - 80; 
 
var maxyear=currentDate.getFullYear() - 1; 
 
$('.datepicker').datepicker({ 
 
    changeMonth: true, 
 
    changeYear: true, 
 
    yearRange:minyear +':'+maxyear, 
 
    showAnim:'clip' 
 
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.css" rel="stylesheet"/> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script> 
 

 
<input type="text" class="datepicker"/>

Моя попытка включала добавление setDate варианта с датой менее года, но до сих пор выпадающее значение осталось minDate года. Ниже то, что я пробовал:

var currentDate=new Date(); 
 
var minyear=currentDate.getFullYear() - 80; 
 
var maxyear=currentDate.getFullYear() - 1; 
 
var setDates=new Date(currentDate.getMonth()+"/"+currentDate.getDate()+"/"+(currentDate.getFullYear()-1)); 
 
$(".datepicker").datepicker({ 
 
     changeMonth: true, 
 
     changeYear: true, 
 
     yearRange:minyear +':'+maxyear, 
 
     showAnim:'clip', 
 
     setDate:setDates 
 
});
<link href="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.css" rel="stylesheet"/> 
 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<script src="https://cdnjs.cloudflare.com/ajax/libs/jqueryui/1.11.4/jquery-ui.min.js"></script> 
 

 
<input type="text" class="datepicker"/>

Любая идея, как я могу получить это сделано?

+0

Я не уверен, в чем ваш вопрос? Чтобы остановить выбор будущей даты, вы можете просто использовать 'maxDate: new Date()' –

+0

, вы пробовали minDate и maxDate, например. minDate: '-80Y', maxDate: '-1Y', – Anil

+0

@RoryMcCrossan. Если вы запустите фрагмент, выпадающий указатель указывает на 1936, и если вы выберете любую дату его получения с 2016 года, в которой я установил maxDate как 2015 .. Надеюсь, я дал понять. –

ответ

1

Мы можем ограничить диапазон выбираемых дат параметрами minDate и maxDate. Установите даты начала и окончания в качестве фактических дат (new Date(2009, 1 - 1, 26)), в виде числового смещения с сегодняшнего дня (-20) или в виде строки периодов и единиц ('+1M +10D').

$('.datepicker').datepicker({ 
     changeMonth: true, 
     changeYear: true, 
     minDate:'-80Y', 
     maxDate:'-1Y', 
     showAnim:'clip' 
    }); 

Это работает.

+0

Ну' maxDate' работал для меня, но не 'minDate', а затем я просто сохранил' maxDate' с 'yearRange', и теперь он выглядит неплохо. Спасибо .. :) –

Смежные вопросы