Pickadate/Pickatime datetimepicker - 所选值不断更改回默认值

Pickadate/Pickatime datetimepicker - selected value keeps changing back to default

我有两个时间选择器,第一个是 'from' 时间,第二个是 'to' 时间。
我想要实现的是,当 'from' 时间被选中时,'to' 时间将在 'from' 时间之前禁用所有时间,如果 'to' 时间早于新 selected 'from' 时间,它将在 'from' 时间后 15 分钟更新 'to' 时间。

更改 select 的值并禁用时间在彼此独立时效果很好,但是当它们一起使用时,时间总是恢复到看起来像中位数的 1:30PM select.

中的值

我最终解决了这个问题,并在下面发布了答案,供遇到此问题的其他人使用。

所以我最终发现是 disable 函数导致了这个问题,我最初是在检查 [=13= 的当前值之前设置 disable 次] 时间比那时少 from 时间。

禁用时间时,pickatime会将当前设置的时间重置为中值,对我来说是1:30PM。

我需要做的就是在禁用任何时间之前将 to 时间相对于新的 from 时间增加 15 分钟。

我的代码最终解决了问题

jQuery('#datetimepicker' + COUNT + '1' + ' input').on('change', function()
        {
            var time = jQuery(this).pickatime('picker').get('select'),
                hour = time.hour,
                minute = time.mins,
                count = jQuery(this).data('count'),

            picker = jQuery('#datetimepicker' + count + '2' + ' input').pickatime('picker');
            picker.set('enable', true);

            if (picker.get('value') != '')
            {
                if (picker.get('select').time <= time.time)
                {
                    picker.set('select', time.time + 15);
                }
            }
            else
            {
                picker.set('select', time.time + 15);
            }

            picker.set('disable',[{from: [7, 0], to: [hour, minute]}]);

            picker.render;
        });

希望这可以为处理此问题的其他人节省一些时间。 :)