我有这个功能
ObjectSpace
我这样使用
function calculateTimes(firstDate, firstTime, secondDate, secondTime){
var fDate = firstDate+" "+firstTime;
var sDate = secondDate+" "+secondTime;
var firstDateFull = new Date(fDate);
var secondDateFull = new Date(sDate);
var diff = secondDateFull - firstDateFull;
var diffSeconds = diff / 1000;
var HH = Math.floor(diffSeconds / 3600);
var MM = Math.floor((diffSeconds % 3600) / 60);
var SS = "00";
var formatted = ((HH < 10) ? ("0" + HH) : HH) + ":" + ((MM < 10) ? ("0" + MM) : MM);
return formatted;
}
我的问题是这是一个延迟字段,时间可以超过24小时。 有没有办法让JavaScript在一小时内接受超过24小时的JavaScript?使用(第四维度)的数据库可以接受24小时以上的小时数,我猜这种情况确实如此。
因此,它需要能够显示 - $('#uoc-r4disDate-fld, #uoc-r4disTime-fld, #uoc-disDate-fld, #uoc-disTime-fld').on('change', function() {
$("#uoc-delay-fld").val(calculateTimes($("#uoc-r4disDate-fld").val(), $("#uoc-r4disTime-fld").val(), $("#uoc-disDate-fld").val(), $("#uoc-disTime-fld").val()));
});
。经过时间的时间格式,如秒表。
答案 0 :(得分:3)
如果我把一切都搞定了,那么你将<input type="time" />
用作“时间场”。此输入类型旨在处理日间时间,而不是时间跨度。这些日期可以格式化为12或24小时格式,它们都描述了一天的时间。像“35:54”之类的东西是35小时54分钟的时间跨度,并且不能用于描述一天中的某个时间,所以这样的值对于这种类型的输入无效。
如果您需要输入此类值,您当然可以使用一个<input type='text' />
或两个<input type="number" />
,一个用于小时,一个用于分钟,如下所示:
<div id="time-span">
<input type="number" min="0" step="1" />:<input type="number" min="0" max="59" step="1" />
</div>