2010-11-15 17 views
5

我目前正在建立一个MVC应用程序,并使用一个jQuery UI的DatePicker http://jqueryui.com/demos/datepicker/MVC - JQuery的日期选择器显示事件

预订事件。

我想在Datepicker中显示所有可用的事件日期。有什么方法可以重新提交日期选择器,以便仅选择可以选择的事件(可点击)或者可以突出显示事件。任何方式将日期传递给datepicker?有什么经验?

在此先感谢

回答

2

您可能想看看DatePicker控件http://jqueryui.com/demos/datepicker/#event-beforeShowDaybeforeShowDay事件。它似乎已准备好为你正在尝试做什么,你只需提供一个日期和样式的列表去与它:类似于:

$('.selector').datepicker({ 
    beforeShowDay: function(date) { 
     for(i = 0; i < arrayOfCalendarEventDatesYouProvide.length; i++) { 
      if(date.getMonth() == arrayOfCalendarEventDatesYouProvide[i].getMonth() 
      && date.getDay() == arrayOfCalendarEventDatesYouProvide[i].getDay() 
      && date.getYear() == arrayOfCalendarEventDatesYouProvide[i].getYear()) 

      //matched a day in the array, turn of date in calendar if you 
      //don't want it pickable 
      return [false, 'some-css-to-indicate-a-match']; 
     } 

     //if you get this far, no matches 
     return [true, '']; 
    } 
}); 
+0

感谢您的答案! – ilkin 2010-11-16 09:29:17

0

控制提供最小日期和最大日期,但不支持提供具体日期: http://jqueryui.com/demos/datepicker/#min-max

你可能不得不修改控制自己参加一组可接受的日期,这可能并不难,因为您可以使用最小/最大功能作为起点。

虽然这是一个非常明显的功能,但从控制中丢失!