2015-05-06 3 views
4

Я хочу отключить предыдущую дату. Например, если выбрана дата начала как 2015-04-01, дата окончания должна начинаться только с 2015-04-01. Предыдущая дата должна быть отключена.как отключить диапазон дат даты в Twitter бутстрап выбор даты?

$(document).ready(function() { 
    var nowdate = new Date(); 
    var now = new Date(nowdate.getFullYear(), nowdate.getMonth(), nowdate.getDate(), 0, 0, 0, 0); 
    var startdate = $("#start_date").datepicker({ 
     format: 'yyyy-mm-dd', 
     onRender: function (date) { 
      return date.valueOf() > now.valueOf() ? 'disabled' : ''; 
     } 
    }).on('changeDate', function (ev) { 
     startdate.hide(); 
    }).data('datepicker'); 
    var enddate = $("#end_date").datepicker({ 
     format: 'yyyy-mm-dd', 
     onRender: function (date) { 
      return date.valueOf() > now.valueOf() ? 'disabled' : ''; 
     } 
    }).on('changeDate', function (ev) { 
     enddate.hide(); 
    }).data('datepicker'); 
}); 

Благодаря

+0

Похоже на то, что http://stackoverflow.com/questions/8356358/jquery-date-picker-disable-past-dates – swinkler

+1

есть много проектов с именем bootstrap datepicker. какой проект вы используете. Это так? https://github.com/eternicode/bootstrap-datepicker/ –

ответ

2

Как уже упоминалось Айван, есть несколько проектов, которые соответствуют описанию.
Предполагая, что вы используете bootstrap-datepicker here. Вы можете использовать событие changeDate для захвата выбранной даты и установить ее как «дату начала» для второго datepicker на странице (используя метод setStartDate).

Нечто подобное в приведенном ниже фрагмент коды:

... 
$(".dateStart").datepicker().on("changeDate",function(){ 
    // Get the selected date 
    var startDt = $(".dateStart").datepicker("getDate"); 
    // Set the 'start date' for the second datepicker 
    $(".dateEnd").datepicker("setStartDate",startDt); 
}); 

$(".dateEnd").datepicker(); 
... 

Я создал JSFiddle для этого - вы можете увидеть здесь работать JSFiddle

Надеются, что это помогает.

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