我正在尝试制作一个日期选择器,其中包含一些我从rss提要中提取的事件。为了制作日期选择器,我几乎复制了这篇文章:jQuery UI Datepicker : how to add clickable events on particular dates?
我遇到的问题是我不断收到错误event.Date is undefined
。我想这可能是因为我在约会时的传递方式。日期来自页面加载的字符串集合,它们的转换如下:
//Convert objects
currentEventInformationString = JsonConvert.SerializeObject(currentStoreEventInformation);
eventDatesString = JsonConvert.SerializeObject(storeEventDates);
其中currentEventInformationString是包含标题,描述和链接的字符串的集合,eventDateString是作为日期的字符串的集合(我从返回date.ToShortDateString();
然后我将所有日期添加到事件数组中(如js):
//Adds each event to the date picker
for (var x = 0; x < eventDates.length; x++) {
//Adds event
events[x] = [{ Title: currentEvents[x].title.toString(), Date: new Date(eventDates[x].toString()) }];
}
然后我尝试运行console.debug(events[x].Title + " " + events[x].Date);
,但每次undefined undefined
当我运行这样的调试时:
console.debug(currentEvents[x].title.toString() + " " + eventDates[x].toString());
我得到正确的值,所以我知道这不是问题。
有什么建议吗?
另外:我知道这个问题看起来很模糊,所以我试着尽可能多地包含我认为相关的示例代码。如果您需要更多,请告诉我。要查看日期选择器的制作方法,请查看链接。
编辑以下是我宣布活动的方式:
//Current event
var events = new Array(eventDates.length);
答案 0 :(得分:0)
我认为你有一套偏离的支架。这样:
events[x] = [{
Title: currentEvents[x].title.toString(),
Date: new Date(eventDates[x].toString())
}];
将包含一个对象文字的数组分配给events[x]
,但我认为您只想将对象分配给events[x]
:
events[x] = {
Title: currentEvents[x].title.toString(),
Date: new Date(eventDates[x].toString())
};