【问题标题】:Highlight an array of dates in PickMeUp plugin在 PickMeUp 插件中突出显示日期数组
【发布时间】:2015-09-24 22:24:12
【问题描述】:

我在我的项目中使用PickMeUp JS 日历插件。

我遇到的问题是我希望能够让用户选择多个日期,同时从我的服务器端数据库中显示预先选择的日期。但是,我无法让它工作:PickMeUp 似乎没有这样的选项。

有人知道如何在日期选择器中突出显示给定的一组日期吗?

【问题讨论】:

    标签: jquery jquery-plugins datepicker highlight


    【解决方案1】:

    这绝对是可能的。

    您需要做的是将数据库中的日期加载到数组中。然后,您可以使用PickMeUp 的object render event 检查此数组,并根据数组中的日期检查每个日期。如果任何日期重合,则返回事件class_name 并带有新的css 类。然后,您可以使用这个 css 类来突出显示数据库中的日期。

    例如,下面的 Javascript/jQuery 说明了我的意思:

    // Creating some 'sample' dates (you just load this from the database instead)
    var datesFromDatabase = [];
    var d = new Date();
    for (i = 2; i < 7; i++) {
        var tempDay = new Date(); tempDay.setHours(0,0,0,0);
        tempDay.setDate(d.getDate()-i);
        datesFromDatabase.push(tempDay.getTime());
    }
    
    $(function () {
        $('.multiple').pickmeup({
            flat: true,
            mode: 'multiple',
            // Before rendering dates, highlight if from database
            render: function(date) {
                if ($.inArray(date.getTime(), datesFromDatabase) > -1){
                    return {
                        class_name : 'highlight'
                    }
                }
            }
        });
    });
    // Little hack to deselect current day: PickMeUp forces you to have a default date :(
    $('.pmu-today').click();
    

    使用以下 CSS:

    .highlight:not(.pmu-today) {
        background: #8FC490;
    }
    .highlight:not(.pmu-today):hover {
        background: #136a9f !important;
    }
    

    DEMO

    【讨论】:

    • 嗨 Jean-paul,感谢您的回复,它正在工作。
    • 您好 Jean-Paul,我还有一个问题,希望您能解决我的问题。请查看以下网址stackoverflow.com/questions/31243383/…
    • 嗨,有什么办法可以删除pickmeup js中的默认日期选择吗?
    • @ramakoti 是的。请重新阅读我的答案:我已经包含了取消选择当天的小技巧。但是,默认情况下,当前日期会突出显示。小技巧只是取消选择它。
    • @ramakoti 如果您也不想突出显示当天,那么您可以通过更改.pmu-today 颜色来实现。见this jsFiddle DEMO。
    猜你喜欢
    • 2014-12-30
    • 1970-01-01
    • 1970-01-01
    • 2016-09-30
    • 1970-01-01
    • 2017-01-17
    • 1970-01-01
    • 2019-03-01
    • 1970-01-01
    相关资源
    最近更新 更多