Pickadate/Pickatime datetimepicker -所选值不断更改回默认值
Pickadate/Pickatime datetimepicker - selected value keeps changing back to default
我有两个时间选择器,第一个是'from'时间,第二个是'to'时间。
我想要实现的是,当'from'时间被选中时,'to'时间将在'from'时间之前禁用所有时间,如果'to'时间在新选择的'from'时间之前,它将在'from'时间后15分钟更新'to'时间。
改变选择的值并禁用时间在彼此独立时工作完美,但是当它们一起使用时,时间总是恢复到1:30PM,看起来像选择中的中值。
我最终想出了这个问题,并把答案贴在下面,供其他遇到这个问题的人使用。
所以我最终发现是disable
函数导致了这个问题,在检查to
时间的当前值是否小于from
时间之前,我最初设置了disable
时间。
当禁用时间时,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;
});
希望这可以节省其他人处理这个问题的时间。:)
相关文章:
- 我的shareService在angular 2中发送值工作正常,但当我渲染我的另一个组件时,会获得默认值
- jquerydatetimepicker日期和时间应在框默认值中,而无需单击框
- 如果值为空,如何设置输入的默认值?jQuery
- 骨干模型默认值-todos.js示例中不必要的代码
- jquery日期选择器年份范围默认值
- Html5输入属性的默认值,如最小值、最大值、大小等
- 根据两个下拉列表的默认值禁用按钮
- 如何创建具有默认值的JavaScript对象字段?(AngularJS模型相关)
- Angularjs-设置不带ng选项的select的默认值
- jQuery Datepicker从日期开始设置默认值
- 如何设置浏览器打开的文件对话框的文件名(一些默认值)
- JQuery BlockUI鼠标加载光标没有't在Google Chrome中返回默认值
- Selectize选择默认值
- 在KeystoneJS中为Types.Money设置默认值
- 是否可以同时为一个元素的所有事件指定阻止默认值
- 防止在IE7中按回车键时出现默认值
- 如何覆盖jqGrid's语言默认值
- 如何为显示jquery滑块值的文本框设置默认值
- 当数组在angularjs中没有可比较的值时,如何分配默认值
- Pickadate/Pickatime datetimepicker -所选值不断更改回默认值