我有一个JQuery数据报警器,我在这里高亮显示日期并成功地将文本添加到工具提示中。我有一些非常类似于本教程的东西。我遇到的问题是,如果在同一天有多个事件,那么旧的工具提示就会被最近添加的事件“覆盖”。我希望有一种方法来“追加”(类似于title+=‘新事件’),但我在上面找不到任何东西。
$(document).ready(function() {
var SelectedDates = {};
SelectedDates[new Date('04/05/2014')] = 'event1';
SelectedDates[new Date('04/05/2014')] = 'event2';
SelectedDates[new Date('04/07/2014')] = 'event3';
SelectedDates[new Date('04/07/2014')] = 'event4';
$('#txtDate').datepicker({
beforeShowDay: function(date) {
var Highlight = SelectedDates[date];
if (Highlight) {
return [true, "Highlighted", Highlight];
}
else {
return [true, '', ''];
}
}
});
});请参阅此处有关此问题的工作示例:
http://jsfiddle.net/4KFQ4/
理想的结果是在同一个单元格中使用event1event2作为工具提示。
任何帮助都将不胜感激。
发布于 2014-03-04 07:31:17
你遇到的问题来自于你的前几行:
var SelectedDates = {};
SelectedDates[new Date('04/05/2014')] = 'event1';
SelectedDates[new Date('04/05/2014')] = 'event2';
SelectedDates[new Date('04/07/2014')] = 'event3';
SelectedDates[new Date('04/07/2014')] = 'event4';在这里,您将'event1'保存到SelectedDates中,然后将'event2'保存到相同的位置,覆盖数据。相反,你可以做这样的事情:
SelectedDates[new Date('04/05/2014')] = ['event1'];
SelectedDates[new Date('04/05/2014')].push('event2');
SelectedDates[new Date('04/07/2014')] = ['event3'];
SelectedDates[new Date('04/07/2014')].push('event4');显然,您可以将其简化为:
SelectedDates[new Date('04/05/2014')] = ['event1','event2'];
SelectedDates[new Date('04/07/2014')] = ['event3','event4'];或者任何让你最快乐的事。
这将在每个特定日期创建一个包含所有事件的数组,然后工具提示将包含每个事件。下面是一个更新的小提琴,向您展示结果:单击此处。
希望这能帮上忙!
https://stackoverflow.com/questions/22078629
复制相似问题