如何计算同一天的持续时间?

时间:2018-11-10 02:45:16

标签: javascript jquery html

由于我使用的是 input type =“ time” ,因此两个时间值都具有am和pm,这会增加时间值的差异。首先,我需要获取这些值,并通过它们来计算持续时间。

<form>
    <label>Start Time</label> 
<input type="time" name ="start_time" id ="start_time" value="" onchange="timeDuration()">

<label>End Time</label>  
<input type="time" name ="end_time" id ="end_time" value="" onchange="timeDuration()">
<label>Time Duration</label> 
<input type="text" name ="time_duration" id ="time_duration" value="">
</form>
function timeDuration(){
var start = $('#start_time').val(),
    end = $('#end_time').val(),
    hours = end.split(':')[0] - start.split(':')[0],
    minutes = end.split(':')[1] - start.split(':')[1];

minutes = minutes.toString().length<2?'0'+minutes:minutes;
if(minutes<0){ 
    hours--;
    minutes = 60 + minutes;
}
hours = hours.toString().length<2?'0'+hours:hours;
document.getElementById("time_duration").value = hours + ":" + minutes;

    };

1 个答案:

答案 0 :(得分:0)

看起来您自己解决了问题或获得了所需的帮助。 您还可以签出节点并预构建npm的时刻。 npm moment Moment具有一些预先构建的功能,这些功能已经可以计算时间之间的差异等。