0

我不确定这是否可行,但我找不到使用 multidatepicker 执行此操作的任何线索。我正在创建一个网络预订系统,该系统需要允许客户选择他们喜欢的任何预订日期。但现在我的客户要求创建每周套餐(每月 4 次)、每两周一次(每 2 周 1 次)等套餐。例如,当客户选择该周的星期二时......剩下的 6 天所有都将被禁用.. 并且每两周一次.. 那一周和下周将被禁用..

千感谢可以提供帮助的人:)

4

1 回答 1

0

我有同样的问题:在我的预订项目中,用户必须可以选择天数范围但也可以选择周数范围(仅从周六到周六)。

我在 multiDatesPicker() 初始化函数的 onSelect() 事件上管理了星期的选择:通过单击一周中的一天 MultiDatesPicker 自动选择从星期六到星期六的相对星期。

不幸的是,对我来说,悬停事件是悬停事件,因为我希望 MultiDatesPicker 也通过悬停一周中的几天来悬停一周,而不仅仅是选择它,因此用户可以感知到真正选择周而不是天。奇怪的是 MultiDatesPicker 没有 onHover() 函数来管理“预选”/悬停事件。

var autoselectRange = [0, days_range];

$('.multidatespicker-wrapper').multiDatesPicker({
numberOfMonths: [1, 2],
minDate: 1, 
firstDay: 1,
mode: 'daysRange',
onSelect: function(dateText, inst) {

    var selectedDate = $.datepicker.parseDate($.datepicker._defaults.dateFormat, dateText);

    from_date = new Date(moment(dateText, "MM/DD/YYYY").format("YYYY-MM-DD"));
    to_date = new Date (moment(dateText, "MM/DD/YYYY").add('days', days_range - 1).format("YYYY-MM-DD"));

    if (weekRange) {
        // Setting of Start and End of the week
        if (from_date.getDay() == 6) numDaysToWeekStart = 0; // because Saturday in this case it is Start of the week
        else numDaysToWeekStart = from_date.getDay() + 1;

        from_date = new Date(from_date.setDate(from_date.getDate() - numDaysToWeekStart));
        to_date = new Date(to_date.setDate(to_date.getDate() - numDaysToWeekStart));

        // Setting of the days of the week
        date = new Date(from_date); 
        weeks = [];

        while (date <= to_date) {
            weeks.push(new Date(date));
            date.setDate(date.getDate() + 1);
        }

        // Selection of the days of the week/weeks in MDP Calendar
        $(this).multiDatesPicker('resetDates', 'picked');
        $(this).multiDatesPicker('addDates', weeks);
    }

    // Any more controls

},   
autoselectRange: autoselectRange,
pickableRange: days_range,

// any more settings });

我希望它可以有所帮助;如果您有管理悬停事件的想法并且可以分享。谢谢

于 2015-03-06T10:36:36.543 回答