由于我使用的是 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;
};
答案 0 :(得分:0)
看起来您自己解决了问题或获得了所需的帮助。 您还可以签出节点并预构建npm的时刻。 npm moment Moment具有一些预先构建的功能,这些功能已经可以计算时间之间的差异等。