2012-01-18 4 views
0

В настоящее время я разрабатываю систему заказов, в которой пользователь может выбрать, в какой день они хотели бы, чтобы их заказ был доставлен.Календарь/datepicker с заблокированными датами

Мне нужна страница, в которой календарь/датапикер видна (не активирована всплывающим) во все времена и имеет все прошлые даты, сегодняшнюю дату и 3 дня в будущее заблокированы. Затем пользователь может выбрать из доступных дат, которые затем отправляются клиенту.

Любая помощь будет очень признательна!

+0

Что вы обнаружили до сих пор? –

ответ

1

Проверьте следующие ссылки: http://jqueryui.com/demos/datepicker/#inline http://jqueryui.com/demos/datepicker/#min-max

Описание говорит, что это: «Установить начальную и конечную даты, как фактические даты (новая дата (2009, 1 - 1, 26)), в виде числового смещения с сегодняшнего дня (-20), или как строка периодов и единиц («+ 1М + 10D»)»

+0

Спасибо, удалось заставить его работать. Просто нужно, чтобы выбор даты, чтобы отправить значение сейчас :) – Ben

+0

Отлично, что он сработал. Пожалуйста, не забудьте отметить ответ как правильный – Ninja

+0

Я сделаю. Знаете ли вы, как я передаю значение с datepicker? – Ben

0

Вот пример того, как всегда отображать календарь:

http://jqueryui.com/demos/datepicker/#inline

Похоже функции затемнение-дата может быть достигнуто посредством callba beforeShowDay ck, или просто установив календарь min/max.

http://jqueryui.com/demos/datepicker/#min-max

http://forum.jquery.com/topic/custom-callback-to-disable-specific-dates-in-datepicker

$('#datepicker').datepicker({..., beforeShowDay: allowedDates}); 

function allowedDates(date) { 
     for (var i = 0; i < jsForbiddenDatesArray.length; i++) { 
      if (date.getTime() == jsForbiddenDatesArray[i].getTime()) { 
        return [false, '']; 
      } 
     } 
     return $.datepicker.noWeekends(date); 
} 
0

это может быть сделано двумя типами

  1. набор MinDate и MaxDate
  2. при открытии DatePicker и изменения месяц/год он сгенерирует событие beforeShowDay с каждой датой в этом месяце и году, и вы можете проверить каждую дату в этой функции на свой массив или объект диапазона дат и вернуть true или false. Если ложь вернется, эта дата будет деактивирована, и по истине эта дата будет активна
Смежные вопросы