Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/85.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/89.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何计算两种HTML5时间输入类型之间的差异_Jquery_Html_Time - Fatal编程技术网

Jquery 如何计算两种HTML5时间输入类型之间的差异

Jquery 如何计算两种HTML5时间输入类型之间的差异,jquery,html,time,Jquery,Html,Time,我有一个包含两个输入type=“time”字段的表单。我在表单上有第三个输入type=“time”字段,名为“delay”,我希望使用jQuery根据两次之间的差异进行更新 我一直在寻找答案,但到目前为止还没有找到有效的解决方案。由于输入type=“time”字段仅包含小时/分钟,因此我尝试了以下方法: <input type="time" id="timeOfCall"> <input type="time" id="timeOfResponse"> var time

我有一个包含两个输入type=“time”字段的表单。我在表单上有第三个输入type=“time”字段,名为“delay”,我希望使用jQuery根据两次之间的差异进行更新

我一直在寻找答案,但到目前为止还没有找到有效的解决方案。由于输入type=“time”字段仅包含小时/分钟,因此我尝试了以下方法:

<input type="time" id="timeOfCall">
<input type="time" id="timeOfResponse">

var timeOfCall = $('#timeOfCall').val();
var timeOfResponse = $('#timeOfResponse').val();
var diff = new Date("Aug 08 2012" + timeOfCall) - new Date("Aug 08 2012" + timeOfResponse);
var timeDifference = diff/(60*60*1000);
这肯定是最接近工作的,但有时会产生一些奇怪的结果。例如,如果调用的时间为01:01,响应的时间为03:03,则其差值为2.033333

在这两种情况下,我也无法在任何情况下更新“延迟”时间字段

$('#delay').val(timeDifference);
什么都不做。我真的非常感谢任何和所有的帮助,我已经在过去的几天里一直在努力,但没有成功,也没有真正的线索如何着手修复它。我在谷歌上搜索了很多次,但实际上很少有结果与HTML5输入类型=“时间”字段相关,所以我到目前为止运气不好


编辑:

可能就是这样:

$('button')。在('click',函数(){
var timeOfCall=$('#timeOfCall').val(),
响应时间=$(“#响应时间”).val(),
小时=响应时间.split(':')[0]-调用时间.split(':')[0],
分钟=响应时间.split(':')[1]-调用时间.split(':')[1];

分钟=分钟。toString().length请发布一个功能示例来说明您的问题。@PalashMondal这是小提琴:非常感谢烘焙,这正是我要找的!烘焙有一个小问题。如果左侧的分钟数大于右侧的分钟数,则不会显示任何内容。您建议如何操作正在考虑修复它?如何使用Javascript而不是jquery进行修复?
01:00am-01:00am
yield
12:00am
可以吗?
$('#delay').val(timeDifference);
$('button').on('click', function () {
    var timeOfCall = $('#timeOfCall').val(),
        timeOfResponse = $('#timeOfResponse').val(),
        hours = timeOfResponse.split(':')[0] - timeOfCall.split(':')[0],
        minutes = timeOfResponse.split(':')[1] - timeOfCall.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;
    $('#delay').val(hours + ':' + minutes);
});