【发布时间】:2017-11-21 07:36:36
【问题描述】:
我正在使用以下 jQuery Timepicker 库:
http://jonthornton.github.io/jquery-timepicker/
https://github.com/jonthornton/jquery-timepicker
我希望用户在 06:00 PM 到 09:00 PM 之间选择一个事件。当用户选择时间选择器时,它将从最小时间开始到最大时间。假设用户在 07:12 PM 登录,用户需要在 08:00 PM 或 08:15 PM 到最大时间 09:00 PM 前 1 小时显示日期。如果时间超过最大时间,则显示时间已超过最大时间的甜蜜警报。如果时间早于最小时间,则显示从 06:00 PM 到 09:00 PM 的所有时间。
我在 var d 中获取当前本地时间。
d = Date.now();
d = new Date(d);
d = (d.getHours() > 12 ? d.getHours() - 12 : d.getHours())+':'+d.getMinutes()+' '+(d.getHours() >= 12 ? "PM" : "AM");
console.log(d);
如何在考虑本地时间的情况下更改最小时间而不超过最大时间?
作为一个新手,目前这似乎超出了我的想象。向专家寻求帮助。
我的小提琴:
更新: https://jsfiddle.net/pamela_john/rh2t301w/33/
现在我有一个 错误,如果当前时间是 7.01 PM,而 maxtime 是 07:00 PM。它将从上午 12:00 开始显示不正确。任何时候都是如此。
d = Date.now();
d = new Date(d);
d = (d.getHours() > 12 ? d.getHours() - 12 : d.getHours()) + ':' + d.getMinutes() + ' ' + (d.getHours() >= 12 ? "PM" : "AM");
console.log(d);
console.log(Intl.DateTimeFormat().resolvedOptions().timeZone);
$(document).ready(function() {
$(function() {
$('input#time').timepicker('remove').timepicker({
'timeFormat': 'h:i A',
'disableTextInput': true,
'minTime': '06:00 PM',
'maxTime': '09:00 PM',
'step': 15
});
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/jquery-timepicker/1.10.0/jquery.timepicker.min.js"></script>
<link rel="stylesheet" type="text/css" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-timepicker/1.10.0/jquery.timepicker.min.css">
<input type="text" id="time" value="" class="time" />
【问题讨论】:
-
@mplungjan。感谢您在本地添加小提琴。
-
小提琴在线更新。 jsfiddle.net/pamela_john/rh2t301w/33
标签: javascript jquery