从变量Javascript中提取值

时间:2011-09-06 22:49:05

标签: javascript jquery jquery-ui

我正在使用jqueryui作为一个日期选择器,我有一个数组用于事件,我从中选择日历中的日期。然后我想把工具提示显示为数组中事件的“标题”,我现在把“events [0] .title”作为第一个元素,但当然我需要得到数组匹配的元素正确的日期,怎么做?

$(function() {
    var events = [ 
        { title: "Concerto", Date: new Date("09/13/2011") }, 
        { title: "Dinner", Date: new Date("09/25/2011") }, 
        { title: "concert", Date: new Date("10/01/2011") }
    ];

    $.datepicker.setDefaults($.datepicker.regional['it']);   

    $("#datepicker").datepicker({
        dateFormat: 'dd-mm-yy',
        beforeShowDay: function(date) {
            var result = [true, '', null];
            var matching = $.grep(events, function(event) {
                return event.Date.valueOf() === date.valueOf();
            });

            if (matching.length) {
                result = [true, 'highlight', events[0].title];
                return result;
            }
            return [false,''];
        }    
    });
});

1 个答案:

答案 0 :(得分:1)

您只需要提取与grep匹配的标题,而不是事件标题。尝试改为:

var matching = $.grep(events, function(event) {
    return event.Date.valueOf() === date.valueOf();
});

if (matching.length) {
    result = [true, 'highlight', matching[0].title];
    return result;
}

(只需尝试将events[0].title更改为matching[0].title