将滑块的 24 小时时间格式转换为 12 小时
Converting 24hours time format to 12hours for slider bar
我在滑块上尝试将 24 小时格式转换为 12 小时格式时遇到了一些问题。这是我的 jsfiddle .如您所见,当您尝试以一种方式从上午滑到下午时,它运行良好。
但是,一旦它到达 PM 并且您滑回 AM,它就会一直显示为 PM。我无法通过滑块修改值,因为我有一些依赖于它的数据库。我唯一可以修改的部分是我尝试在滑块值上显示它的地方,即这部分:
// Convert 24 hours format into 12
if(hours == 0){
hours = 12;
ext = "AM";
}
if(hours == 12){
ext = "PM";
}
if(hours > 12){
hours = hours - 12;
ext = 'PM';
}
$('#sliderValue').html(hours+':'+minutes + ext);
有导游吗?提前谢谢。
请尝试此小提琴
$(function() {
var ext = 'AM';
$('#sliderValue').html('12:00AM');
$("#slider-range").slider({
min: 0,
max: 1380,
step: 60,
slide: function(e, ui) {
var hours = Math.floor(ui.value / 60);
var minutes = ui.value - (hours * 60);
if(hours.length == 1) hours = '0' + hours;
if(minutes.length == 1) minutes = '0' + minutes;
if(minutes==0)minutes = '00';
// Convert 24 hours format into 12
if(hours >= 12){
ext = 'PM';
}
else{
ext = 'AM';
}
if(hours>12){
hours = hours - 12;
}
$('#sliderValue').html(hours+':'+minutes + ext);
}
});
});
为什么要改变日常生活中的小时值?使用单独的值,例如
var americanTime = hours;
if(hours > 12) {
americanTime = hours - 12;
}
你从来没有反过来检查过,你需要这样做:
// Convert 24 hours format into 12
if(hours < 12)
{
ext = 'AM';
if(hours == 0)
{
hours = 12;
}
}
else
{
ext = 'PM';
if(hours > 12)
{
hours -= 12;
}
}
http://prntscr.com/5qmrs7
JsFiddle
$(function() {
$('#sliderValue').html('12:00AM');
$("#slider-range").slider({
min: 0,
max: 1380,
step: 60,
slide: function(e, ui) {
var ext = 'AM';
var hours = Math.floor(ui.value / 60);
if(hours > 12){
ext = 'PM';
}
var minutes = ui.value - (hours * 60);
if(hours.length == 1) hours = '0' + hours;
if(minutes.length == 1) minutes = '0' + minutes;
if(minutes==0)minutes = '00';
// Convert 24 hours format into 12
if(hours == 0){
hours = 12;
}
$('#sliderValue').html(hours+':'+minutes + ext);
}
});
});
从不为 0 到 12 之间的小时指定 AM 后缀。因此,当您的滑块从 PM 部分返回时,它永远不会更新并保持为 PM(至少直到您将其放回 0)。
添加部分
if(hours > 0 && hours < 12){
ext = 'AM';
}
你应该得到你预期的结果。
相关文章:
- Jqgrid 24小时格式的日期列
- 将时间格式更改为24小时格式
- 如何在jQuery日期时间选择器中添加12小时格式
- javascript/jquery 数字时钟脚本,24 小时格式,带有日期
- 24小时格式的日期范围选取器
- 如何从12小时格式创建javascript日期
- jQuery 掩码插件中的时间验证 24 小时格式
- 如何使用 javascript 进行总共 24 小时验证维护 12 小时格式
- 使用 Date.js 解析 12 小时格式时获取 null
- 如何计算 24 小时格式的两个时间之间的差异
- JavaScript 格式化时间 24 小时格式为 12 小时
- 日期范围选取器输入字段不是 24 小时格式
- 使用 javascript 或 jquery 以 24 小时格式减去时间
- 如何使用 javascript 将小时转换为 12 小时/24 小时格式
- UTC 时间不是以 24 小时格式显示的,并且在上午 12 点之后不正确
- 24 小时格式的小时和分钟与前导零
- 以12小时格式显示时间
- 需要12小时格式而不显示AM/PM时间选择器
- 如何使用javascript将时间从24小时格式转换为12小时格式
- 如何使用angular获得AM/PM的12小时格式