我有一个 defaultTime 设置,它采用设备时钟并将其设置为第一个 timepicker 的默认值,第二个它只设置从第一个 timepicker 开始 +1 小时。这就是我加载它时的工作方式。
但我想要实现的与谷歌文档日历非常相似。如果我更改第一个时间选择器,它也应该更改第二个。如果我更改第二个,那只会在 timepicker nr 1 和 nr 2 之间产生时间差。这意味着如果 nr 1 显示 10.00 而 nr 2 显示 11,如果我将 nr 2 更改为 12 然后开始更改 nr 1,它除非我将 nr 2 改回,否则应将差值保持为 2 小时。
这是我的 HTML 和 PHP 代码
<div class="col-md-6 timeField" <?= !$calendarEntryForm->showTimeFields() ? 'style="opacity:0.2"' : '' ?>>
<?= $form->field($calendarEntryForm, 'start_time')->widget(TimePicker::class,
[
'readonly' => false,
'pluginOptions' => [
'minuteStep' => 5,
'defaultTime' => date('H:00', strtotime('+1 hour')),
],
'options'=>[
'class'=>'form-control',
]
],
['disabled' => $calendarEntryForm->entry->all_day]); ?>
</div>
</div>
<div class="col-md-6 timeField" <?= !$calendarEntryForm->showTimeFields() ? 'style="opacity:0.2"' : '' ?>>
<?= $form->field($calendarEntryForm, 'end_time')->widget(TimePicker::class,
[
'readonly' => false,
'pluginOptions' => [
'minuteStep' => 5,
'defaultTime' => date('H:00', strtotime('+2 hour')),
],
'options'=>[
'class'=>'form-control',
]
],
['disabled' => $calendarEntryForm->entry->all_day]); ?>
</div>
</div>
使用的时间选择器是来自 Krajee.com 的 Kartik Visweswaran。
我假设我需要用 jQuery 在 javascript 文件中修复这个问题,但我不知道该怎么做。如果缺少某些使您难以提供帮助的信息,只需回复您需要的信息即可。
编辑:
来自控制台的 HTML
有人知道吗?它很可能是我需要做的 jQuery 事情,并将其连接到 divclass 而不会出现错误,因此它会对当前时间选择器中的更改做出反应