我们有一个将事件数据插入mysql表的表单,然后通过JSON提供fullcalendar。是否可以设置类别颜色,例如“假日”,“疾病”,“会议”?
我们当前的json是这样的,不确定如何为事件指定颜色?
$jsonArray = array();
while($row = mysql_fetch_array($result, MYSQL_ASSOC))
{
$id = $row['HolidayType'];
$title = $row['name'];
$start = $row['start'];
$end = $row['end'];
// Stores each database record to an array
$buildjson = array('title' => "$title", 'start' => "$start", 'end' => "$end", 'allDay' => false);
// Adds each array into the container array
array_push($jsonArray, $buildjson);
}
// Output the json formatted data so that the jQuery call can read it
echo json_encode($jsonArray);
亲切的问候
加里
答案 0 :(得分:1)
来自the docs
的颜色强>
设置事件的背景和边框颜色,就像日历范围的eventColor选项一样。
$('#calendar').fullCalendar({
events: [
{
title : 'event1',
start : '2010-01-01',
color: 'red'
}
]
});
答案 1 :(得分:1)
我在实现中完成此操作的方法是让两个或多个eventSources看到http://arshaw.com/fullcalendar/docs/event_data/Event_Source_Object/。每个eventSource都有自己的json feed,例如只返回会议,下一个假期等...每个eventSource都有自己的颜色方案,使用color和textColor或backgroundColor,borderColor和textColor。 HTH。
在FullCalendar的早期版本中使用的另一种方法仍然可以使用的是使用json feed发回一个额外的param,其中包含一个用于“着色”事件的css类。因此,任何假期都可以举办“假期”课程,参加“会议”课程等。
答案 2 :(得分:0)
将颜色变量添加到json数组将改变所有事件的颜色。例如,如果您有switch / case或嵌套ifelse为不同的事件分配不同的颜色,则不会发生这种情况,因为fullcalendar中的'color'变量将采用最后一个颜色值并将其分配给所有事件。