2013-07-29 147 views
3

我在我的asp.net应用程序中使用FullCalendar。我需要更改背景颜色更改FullCalendar中的日背景颜色

是我迄今为止尝试:全日

dayRender: function (date, cell) { 

    var today = new Date(); 
    var end = new Date(); 
    end.setDate(today.getDate()+7); 

    if (date.getDate() === today.getDate()) { 
     cell.css("background-color", "red"); 
    } 

    var start = new Date(); 
    start.setDate(today.getDate()+1); 


    while(start <= end){ 

     //alert(start + "\n" + tomorrow); 
     if(start.getDate() == date.getDate()){ 
      cell.css("background-color", "yellow"); 
     } 

     var newDate = start.setDate(start.getDate() + 1); 
     start = new Date(newDate); 
    }   
} 

这种变化的背景颜色。 Demo

但我的需要是改变日期的背景颜色,从当前日期开始的7天。

今天是2013七月-29。我需要更改以下几天的背景颜色。

2013-July-30 
2013-July-31 
2013-August-01 
2013-August-02 
2013-August-03 
2013-August-04 
2013-August-05 

我该怎么做?

+0

你有你自己尝试新鲜事物?您是否在寻找解决方案? – putvande

+0

您使用的是jqueryDatetimepicker – Amit

+0

@putvande Yes.i在'FullCalendar'中尝试了'dayRender'事件。自从几个小时后仍然试图实现这一点。 – Bishan

回答

14

你可以这样说:

dayRender: function (date, cell) { 

    var today = new Date(); 
    var end = new Date(); 
    end.setDate(today.getDate()+7); 

    if (date.getDate() === today.getDate()) { 
     cell.css("background-color", "red"); 
    } 

    if(date > today && date <= end) { 
     cell.css("background-color", "yellow"); 
    } 

} 

http://jsfiddle.net/z8Jfx/7/

+0

我有另一个[qustion](http://stackoverflow.com/questions/17942632/change-the-days-background-color-in-fullcalendar)关于改变FullCalendar中的天背景颜色。如果你能帮助我,我很感谢你。 – Bishan

+2

对于日期没有函数getDate(),它应该是date.date()来代替。 –

1
dayRender : function(date, cell) { 
          var idx = null; 
          var today = new Date().toDateString(); 
          var ddate = date.toDate().toDateString(); 

          if (ddate == today) { 
           idx = cell.index() + 1; 
           cell.css("background-color", "azure"); 
           $(
             ".fc-time-grid .fc-bg table tbody tr td:nth-child(" 
               + idx + ")").css(
             "background-color", "azure"); 

          } 

         } 
+0

这是什么添加到这个已被接受的问题? – flob

+2

欢迎来到Stack Overflow!尽管这段代码可以解决这个问题,但[包括一个解释](// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers)确实有助于提高您的帖子的质量。请记住,您将来会为读者回答问题,而这些人可能不知道您的代码建议的原因。也请尽量不要使用解释性注释来挤占代码,因为这会降低代码和解释的可读性! – FrankerZ

+0

@flob如果您使用agendaWeek和agendaDay观看这一个也改变他们的bakcground。感谢:“.fc-time-grid .fc-bg table tbody tr td:nth-​​child(”+ idx +“)”“选择器。这就是为什么它值得我加上一个。 –