我有一个包含多个不同用户条目的完整日历。我已经成功地为每个用户的日历条目设置了不同的颜色。这一切都有效,除非我将日历项拖(移动)到另一个日期,颜色会变回默认值。
json 看起来像这样
{
"events":[
{
"title":"tkt[14411]",
"start":"2015-07-09T06:00:00.196-0500",
"end":"2015-07-09T08:00:00.196-0500",
"id":"7",
"userID":"1",
"calColor":"#ff0000",
"className":"ticketSrc_1",
"custom":"test text here"
},
{
"title":"tkt[14412]",
"start":"2015-07-11T06:00:00.196-0500",
"end":"2015-07-11T08:00:00.196-0500",
"id":"7",
"userID":"2",
"calColor":"#ffff00",
"className":"ticketSrc_2",
"custom":"test text here"
}
],
"error":"0"
}
我添加事件并更改每个事件颜色的代码是这样的:
// remove duplicate events
for(var i=0;i<=json.events.length-1;i++){
$('#calendar').fullCalendar("removeEvents",json.events[i].id);
}
// set colors for each user
$.when(
$('#calendar').fullCalendar("addEventSource",json)
).done(function(){
var cname="";
for(var i=0;i<=json.events.length-1;i++){
cname=".ticketSrc_"+json.events[i].userID;
$(cname).css("background",json.events[i].calColor);
}
});
最佳答案
解决方案是在 json 中传递一个“颜色”参数
{
"events":[
{
"title":"tkt[14411]",
"start":"2015-07-09T06:00:00.196-0500",
"end":"2015-07-09T08:00:00.196-0500",
"id":"7",
"userID":"1",
"color":"#ff0000",
"className":"ticketSrc_1",
"custom":"test text here"
},
{
"title":"tkt[14412]",
"start":"2015-07-11T06:00:00.196-0500",
"end":"2015-07-11T08:00:00.196-0500",
"id":"7",
"userID":"2",
"color":"#ffff00",
"className":"ticketSrc_2",
"custom":"test text here"
}
],
"error":"0"
}
关于jquery - 全日历在移动中改变颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31273883/