我目前将我的事件动态拉入我的日历中。然后,当我将鼠标悬停在事件上时,它会弹出一个qTip(jquery插件)以显示弹出对话框。
我目前有一个"链接",用于"完成"日历上的项目,我正在使用这个 javascript 从链接中提取我的信息。
// Update event to be complete
$('.updateEvent').live('click', function() {
var goTo = $(this).attr('href');
var eventId1 = $(this).attr('rel');
var eventId2 = eventId1.split("-");
var eventId = eventId2[1];
$.ajax({
url: goTo,
dataType: 'html',
success: function (event, response) {
$("#"+eventId).fullCalendar('className', '.complete');
//$("#calendar").fullCalendar("refetchEvents");
},
error: function(response, data) {
alert("Oops... Looks like we're having some difficulties.");
}
});
return false;
});
有没有办法去做和更新事件"类名"->".complete"我知道我应该拉入实际的"事件",但我不确定如何使用 jQuery qTip 功能做到这一点。
我希望这是有道理的,如果有任何方向,将不胜感激。
更新的代码:
// Update event to be complete
$('.updateEvent').live('click', function() {
var goTo = $(this).attr('href');
var eventId1 = $(this).attr('rel');
var eventId2 = eventId1.split("-");
var eventId = eventId2[1];
$.ajax({
url: goTo,
dataType: 'html',
success: function (event, response) {
var eventNew = $("#calendar").fullCalendar("clientEvents", eventId);
console.log(eventNew);
},
error: function(response, data) {
alert("Oops... Looks like we're having some difficulties.");
}
});
return false;
});
当我写入控制台时.log(eventNew);它返回为NULL。 我知道eventId正在响应实际的事件ID,例如(17836)。
任何其他想法将不胜感激!
我在这个页面上的完整JS脚本:http://jsfiddle.net/ah73B/
我认为在更改类名之前,您需要先获取事件的句柄。看看.fullCalendar( 'clientEvents' [, idOrFilter ] )
方法。如果您知道 eventId,则可以将其作为筛选器传递给此方法。然后更改类名。
希望这有帮助。您可以发布问题的 HTML 以使其更清晰。