2016-09-13 3 views
0

У меня есть проблема, связанная с bootstrap3 DatePicker, это мой код:Bootstrap DatePicker диапазон дат от и до

$(document).ready(
    /* This is the function for multi datepicker */ 
    function() { 
     $(document).on('focus',".datepickers", function(){ 
      $("#searchByCreateDate").datepicker({ 
       endDate : new Date(), 
       beforeShow : function() 
       { 
        $(this).datepicker({maxDate: 0}); 
       }, 
       autoclose:true, 
       altFormat: 'yy-mm-dd', 
       format: 'yyyy-mm-dd' 
      }); 
      $("#searchByToDate").datepicker({ 
       endDate : new Date(), 
       beforeShow : function() 
       { 
        $(this).datepicker('option','startDate', $('#searchByCreateDate').val()); 
       }, 
       altFormat: "yy-mm-dd", 
       format: 'yyyy-mm-dd', 
       autoclose:true 
      }); 
     }); 
    } 
); 

У меня есть два datepickers - один для from date и второй для to date. Мое требование - когда пользователь выбирает from date, тогда to date начинается с from date, а предыдущие даты скрыты, а в to date пользователь может выбрать только следующие три месяца за один раз.

+0

, пожалуйста, перепишите свой вопрос. Это действительно очень трудно прочитать и понять, что именно вам нужно –

ответ

2

Вам необходимо установить startDate и endDate на ваш datepicker. Поскольку вы не знаете нужные даты заранее, вы должны добавить их, когда первый выбран - onChange. Вы должны добавить это ..

$('#searchByCreateDate').on("change", function(){ 
    //when chosen from_date, the end date can be from that point forward 
    var startVal = $('#searchByCreateDate').val(); 
    $('#searchByToDate').data('datepicker').setStartDate(startVal); 
}); 
$('#searchByToDate').on("change", function(){ 
    //when chosen end_date, start can go just up until that point 
    var endVal = $('#searchByToDate').val(); 
    $('#searchByCreateDate').data('datepicker').setEndDate(endVal); 
}); 

Информация получена here.

+0

Почему функция forforeshow не работает – phpdev

+0

, потому что они выполняются правильно, когда загружается ваша страница. Таким образом, поля ввода пустые, а ограничения не заданы. что конструктор 'datepicker' выполняется только один раз. он не работает «вживую», слушая поля все время. –

+0

, так что я могу сделать для работы beforeshow функции – phpdev

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