jquery计算两个日期时间的差

用jquery计算出差用时。
有五个表单字段:出差日期1,出差时间1,回程日期2,回程时间2,出差用时(小时)
要绑定一个触发事件,输入前四个字段后,点击空白处,自动计算出差用时(小时)
日期格式 年-月-日 时间格式 h:m:s

下面的问题出在哪里

出差日期1 : <input id="1"  type="text" />   
出差时间1: <input id="2"  type="text" />   
出差日期2 : <input id="3"  type="text" />   
出差时间2: <input id="4"  type="text" />   
出差用时: <input id="5"  type="text" />  
<script language="javascript">   
$('#1,#2,#3,#4').blur(function () {          
var d1 = $('#1');//出差日期1         
var t1 = $('#2');//出差时间1         
var d2 = $('#3');//出差日期2         
var t2 = $('#4');//出差时间2         
if (d1.val() == '' || t1.val() == '' || d2.val() == '' || t2.val() == '') return;         //转为时间         
var d1 = new Date(d1.replace(/-/g, '/') + ' ' + t1);         
var d2 = new Date(d2.replace(/-/g, '/') + ' ' + t2);          
var hour = Math.abs(d1.getTime() - d2.getTime()) / 1000 / 60 / 60;//小时          
$('#5').val(hour); //如果不是输入控件用html方法    
}); 
</script>

前面4个日期都绑定blur事件然后同时获取4个日期对象,判断全部不为空时执行计算

    $('#d1,#t1,#d2,#t2').blur(function () {
        var d1 = $('#d1');//出差日期1
        var t1 = $('#t1');//出差时间1
        var d2 = $('#d2');//出差日期2
        var t2 = $('#t2');//出差时间2
        if (d1.val() == '' || t1.val() == '' || d2.val() == '' || t2.val() == '') return;
        //转为时间
        var d1 = new Date(d1.replace(/-/g, '/') + ' ' + t1);
        var d2 = new Date(d2.replace(/-/g, '/') + ' ' + t2);

        var hour = Math.abs(d1.getTime() - d2.getTime()) / 1000 / 60 / 60;//小时

        $('#出差用时ID').val(hour);//如果不是输入控件用html方法
    });

1.java方法
function int getDat(String startTime,String endTime){
long to = df.parse(startTime).getTime();
long from = df.parse(endTime).getTime();
int day = (int) ((from - to) / (1000 * 60 * 60 * 24......
答案就在这里:计算两个时间的日期差
----------------------你好,人类,我是来自CSDN星球的问答机器人小C,以上是依据我对问题的理解给出的答案,如果解决了你的问题,望采纳。

空白处绑定鼠标点击事件onmouseup="click();",click(){var startTime=$("#startTime").val();var endTime=$("#endTime").val();(或者通过document.getElementById('')获取时间字符串);var st1 = Date.parse(new Date(startTime))//开始时间转换成时间戳;var en1 = Date.parse(new Date(endTime))//结束时间转换成时间戳;(en1-st1)/1000/60/60得到小时};

将时间转换成时间戳,这样的话直接相减就行了,比较方便

执行了没效果,问题出在哪里

出差日期1 : <input id="1"  type="text" />   
出差时间1: <input id="2"  type="text" />   
出差日期2 : <input id="3"  type="text" />   
出差时间2: <input id="4"  type="text" />   
出差用时: <input id="5"  type="text" />  
<script language="javascript">   
$('#field12886,#field12888,#field12887,#field12889').blur(function () {          
var d1 = $('#1');//出差日期1         
var t1 = $('#2');//出差时间1         
var d2 = $('#3');//出差日期2         
var t2 = $('#4');//出差时间2         
if (d1.val() == '' || t1.val() == '' || d2.val() == '' || t2.val() == '') return;         //转为时间         
var d1 = new Date(d1.replace(/-/g, '/') + ' ' + t1);         
var d2 = new Date(d2.replace(/-/g, '/') + ' ' + t2);          
var hour = Math.abs(d1.getTime() - d2.getTime()) / 1000 / 60 / 60;//小时          
$('#5').val(hour); //如果不是输入控件用html方法    
}); 
</script>

<!DOCTYPE html>

<head>
    <meta charset="utf-8">
    <title>出差时差</title>
    <script src="http://libs.baidu.com/jquery/2.1.4/jquery.min.js"></script>
    <script>
        $(document).ready(function() {
            $("#t4 input").blur(function() {
                //取出日期时间的值
                var day1 = $("#t1 input").val();
                var time1 = $("#t2 input").val();
                var day2 = $("#t3 input").val();
                var time2 = $("#t4 input").val();
                //拆分日期
                var arr1 = day1.split("-");
                var arr2 = day2.split("-");
                //字符串转换成日期对象
                var date1 = new Date(parseInt(arr1[0]), parseInt(arr1[1]), parseInt(arr1[2]), parseInt(time1));
                var date2 = new Date(parseInt(arr2[0]), parseInt(arr2[1]), parseInt(arr2[2]), parseInt(time2));
                //计算并插入结果
                $("#t5").html((Number(date2) - Number(date1)) / 3600000);
            })
        })
    </script>

</head>

<body>
    <form>
        <fieldset>出差时间计算</fieldset>
        <table>
            <tr>
                <td>出差日期(年月日:2016-06-01)</td>
                <td id="t1"><input type="text" /></td>
            </tr>
            <tr>
                <td>出差时间(小时:24)</td>
                <td id="t2"><input type="text" /></td>
            </tr>
            <tr>
                <td>回程日期(年月日:2016-06-01)</td>
                <td id="t3"><input type="text" /></td>
            </tr>
            <tr>
                <td>回程时间(小时:24)</td>
                <td id="t4"><input type="text" /></td>
            </tr>
            <tr>
                <td>出差用时(小时)</td>
                <td id="t5"><input type="text" /></td>
            </tr>

        </table>

    </form>

</body>