时间选择器禁用当前时间之前的时间
Posted
技术标签:
【中文标题】时间选择器禁用当前时间之前的时间【英文标题】:timepicker disable time before current time 【发布时间】:2015-07-21 23:11:45 【问题描述】:我正在使用这个 jquery 时间选择器:http://jonthornton.github.io/jquery-timepicker/
它提供了一个开箱即用的输入下拉菜单,小时数增加了 30 分钟,这正是我所需要的。
如何在时间选择器中禁用当前时间之前的所有时间?
例如,如果当前时间是下午 4:10,则应禁用 04:30 之前的所有值。
API 仅提供以下信息:
disableTimeRanges 禁用某些时间范围的选择。输入是 一组时间对,例如 `[['3:00am', '4:30am'], ['5:00pm', '8:00 PM']]。间隔的开始将被禁用,但结束 惯于。默认值:[]
现有代码:
var timeOptions =
'timeFormat': 'h:i A'
;
$('#pickTime').timepicker(timeOptions);
【问题讨论】:
这里的代码太少了,我忘了添加。我现在已经编辑了。谢谢 您需要将'minTime'属性设置为当前时间。 【参考方案1】:试试这个:
function getCurrentTime(date)
var hours = date.getHours(),
minutes = date.getMinutes(),
ampm = hours >= 12 ? 'pm' : 'am';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0'+minutes : minutes;
return hours + ':' + minutes + ' ' + ampm;
var timeOptions =
'timeFormat': 'h:i A',
'disableTimeRanges': [['12am', getCurrentTime(new Date())]]
;
或者你可以使用最小时间:
var timeOptions =
'timeFormat': 'h:i A',
'minTime': getCurrentTime(new Date())
;
【讨论】:
【参考方案2】:尝试像这样使用 minDate 属性:
$(function ()
$("#date").datepicker( minDate: 0 );
);
【讨论】:
他使用的是时间选择器而不是日期选择器以上是关于时间选择器禁用当前时间之前的时间的主要内容,如果未能解决你的问题,请参考以下文章
在 laravel 4 中使用引导日期选择器时禁用昨天之前的日期