我有一个对象数组,确定日期是否在数组中的最佳方法是什么,因此无法在jQuery日期选择器中选择它。如果需要,我可以将DateValue存储为日期。
var EventDates = [{"DateID: "1", DateValue: "3/1/2011", FormattedDate: Tue, Mar 1 2011"},
{"DateID: "2", DateValue: "3/2/2011", FormattedDate: Wed, Mar 2 2011"}]
$('.juidateicon_ext').datepicker({
showOn: "button",
buttonImage: "/Content/images/icons/calendar.gif",
buttonImageOnly: true,
showOn: 'both',
beforeShowDay: eventDays
});
function eventDays(date) {
1. Code to determine if "date" is in DateValue in the EventDates Array
2. If date exist, return [false, ""];else return [true, ""];
}
答案 0 :(得分:1)
我冒昧地清理你的EventDates
数组:
var EventDates = [{
"DateID": "1",
"DateValue": "3/1/2011",
"FormattedDate": "Tue, Mar 1 2011"},
{
"DateID": "2",
"DateValue": "3/2/2011",
"FormattedDate": "Wed, Mar 2 2011"
}];
这是eventDays
函数:
function eventDays(date) {
var length = EventDates.length, i = 0;
var event = null, eventDate = false;
while (i < length && !eventDate) {
event = EventDates[i];
eventDate = new Date(event.DateValue).valueOf() === date.valueOf();
i++;
}
return [!eventDate, ''];
}
以下是一个有效的例子:http://jsfiddle.net/andrewwhitaker/uYpnW/1/
希望有所帮助!