1

我再次为我的酒店 asp.net MVC 3 应用程序编写了一个 jQuery 脚本。我想在 jQuery 中制作下拉日历,这样已经为特定房间保留的日期是不可点击的。这意味着首先我必须从数据库中读取日期,然后以某种方式在 jQuery 脚本中读取它,然后再显示房间预订日期的适当日历。

我是否需要为此学习 jQuery,如果不需要,该怎么做?数据库检索指定日期是否需要 Ajax?你能帮我么?

非常感谢你

PS 如果我需要学习 jQuery(和/或 Ajax),你能给我一些高质量的资源提示吗?谢谢

4

1 回答 1

0

从 google jQuery UI DatePicker 找到这个:禁用指定的日期

您可以将此代码包装在 JS 函数中并将日期列表传递给它(类似于)

    function ShowDatePicker(dateList)
{
var disabledDays = dateList;

/* utility functions */
function nationalDays(date) {
  var m = date.getMonth(), d = date.getDate(), y = date.getFullYear();
  //console.log('Checking (raw): ' + m + '-' + d + '-' + y);
  for (i = 0; i < disabledDays.length; i++) {
    if($.inArray((m+1) + '-' + d + '-' + y,disabledDays) != -1 || new Date() > date) {
      //console.log('bad:  ' + (m+1) + '-' + d + '-' + y + ' / ' + disabledDays[i]);
      return [false];
    }
  }
  //console.log('good:  ' + (m+1) + '-' + d + '-' + y);
  return [true];
}
function noWeekendsOrHolidays(date) {
  var noWeekend = jQuery.datepicker.noWeekends(date);
  return noWeekend[0] ? nationalDays(date) : noWeekend;
}

/* create datepicker */
jQuery(document).ready(function() {
  jQuery('#date').datepicker({
    minDate: new Date(2010, 0, 1),
    maxDate: new Date(2010, 5, 31),
    dateFormat: 'DD, MM, d, yy',
    constrainInput: true,
    beforeShowDay: noWeekendsOrHolidays
  });
});
}
于 2012-11-02T23:36:04.083 回答