我正在使用datetimepicker插件。我收到一个奇怪的错误。每当我从下拉列表中选择一个时间时,插件会在所选时间前一小时选择。无法弄清楚为什么会发生这种情况
<!DOCTYPE html>
<html>
<head>
<title> Date Time Picker </title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.min.css" />
</head>
<body>
<input type="text" value="2:00 PM" id="timepicker" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.full.min.js" ></script>
<script>
$('#timepicker').datetimepicker({
datepicker: false,
step:30,
format:'g:i A'
});
</script>
</body>
</html>
&#13;
我得到这篇文章的答案是将格式选项中的 g 更改为Capital G 。但是当我这样改变意味着12小时格式已经改为24小时格式。我想让它保留12小时格式并解决这个问题
答案 0 :(得分:0)
通常在处理日期和时间时,+ 1小时/天等的差异必须与时区差异有关。 1.如果插件具有时区配置参数,则为Se。 2.通过增加1小时来计算时区偏差。
答案 1 :(得分:0)
这是因为您使用了无效的format
。只需使用format:'H:i A'
代替format:'g:i A'
$('#timepicker').datetimepicker({
datepicker: false,
step: 30,
format:'H:i A'
});
&#13;
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.min.css" />
<input type="text" value="2:00 AM" id="timepicker" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.full.min.js"></script>
&#13;
答案 2 :(得分:0)
使用G Capital:
$('#timepicker').datetimepicker({
datepicker: false,
step: 30,
format:'G:i A'
});
答案 3 :(得分:0)
只需更改格式g:i A到H:i A:
<!DOCTYPE html>
<html>
<head>
<title> Date Time Picker </title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.min.css" />
</head>
<body>
<input type="text" value="2:00 AM" id="timepicker" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery-datetimepicker/2.5.4/build/jquery.datetimepicker.full.min.js" ></script>
<script>
$('#timepicker').datetimepicker({
datepicker: false,
step:30,
format:'H:i A'
});
$('#timepicker').change(function(){
$(this).val($(this).val().replace(/^0+/, ''));
});
</script>
</body>
</html>
&#13;