Добавление информации к номерам дня в календаре jquery datepicker - PullRequest
2 голосов
/ 30 января 2012

Я хочу добавить дополнительную информацию в календарь в jquery datepicker. В настоящее время календарь показывает месяц с днями, указанными в представлении календаря. Что я хочу сделать, это добавить число в скобках рядом с номером дня. Я пишу форму для планировщика и хочу показать пользователю, сколько событий уже запланировано на этот день с использованием календаря.

У меня недостаточно прав для добавления изображений в этот пост, поэтому я постараюсь показать, что я ищу ниже.

Обычный календарь Datepicker:

Su   M   T   W   TH  F   Sa
 1   2   3   4   5   6   7
 8   9  10  11   12  13  14

Что я ищу:

  Su     M      T      W      TH     F      Sa
 1(2)   2(1)   3(1)   4(1)   5(1)   6(1)   7(8)
 9(1)   10(2)  11(5)  12(4)  13(3)  14(6)  15(2)

**the numbers in parenthesis () are the number of appointments
  already scheduled for that day.**

Я получаю необходимую информацию для ввода в скобках из запроса mySQL. Возвращает дату и количество. Я могу отформатировать дату так, чтобы она соответствовала всем требованиям вашего решения.

У меня была мысль создать переменные, которые названы в честь конкретной даты, с определением, которое является счетчиком (напр., Вар 2012-1-30 = 1, вар 2012-1-31 = 4). Тогда я бы каким-то образом попросил функцию datepicker добавить определение, когда день совпадал с переменной, которую я создал. Я не уверен, есть ли способ добавить это в функцию datepicker.

Другое решение, которое я попробовал и не смог получить, - это отредактировать функцию datepicker, чтобы добавить класс в каждый день, чтобы я мог выбирать каждый день с помощью jquery. Например, 30 января 2012 года класс был похож на [class = "date_2012-1-30"]. Я мог вручную выбирать и редактировать дни таким образом, используя класс (именно так я редактировал второе изображение), но я не мог заставить средство выбора даты использовать эту информацию. Я попробовал событие beforeshow в datepicker, подумав, что календарь может изменить текст в соответствующих классах до его отображения, но это не сработало.

Мне было интересно, есть ли у кого-нибудь идеи о том, как добиться того, что я ищу. Я снова пытаюсь добавить число в скобках после номера дня в календаре в jquery datepicker.

Спасибо за любую помощь!

1 Ответ

2 голосов
/ 30 января 2012

Вы можете добавить класс к любому дню, установив его beforeShowDay событие,

$( "#datepicker" ).datepicker({
   beforeShowDay: function(date) {
        return [true, 'date_' + date.getTime()];
   }
});

Где дата - это класс, который нужно добавить к дате, а дата - это день, когда класс будет добавлен.

http://jsfiddle.net/NA9p5/

...