<table border="1" width="100%" id="time"> 
<tr> 
    <td> <div>客户报障时间 </div> </td> 
    <td> <input type="text" name="khbztime" onFocus="WdatePicker({startDate:'%y-%M-%d 00:00:00',dateFmt:'yyyy-MM-dd HH:mm:ss',alwaysUseStartDate:true})" value="2009-03-14 09:00"/> </td>  //调用My97DatePicker4.0 日期控件取得日期时间 
</tr> <tr> 
    <td> <div>到达现场时间 </div> </td> 
    <td> <input type="text" name="ddtime" onFocus="WdatePicker({startDate:'%y-%M-%d 00:00:00',dateFmt:'yyyy-MM-dd HH:mm:ss',alwaysUseStartDate:true})" value="2009-03-15 10:10"/> </td> 
</tr> <tr> 
    <td class="index"> <div align="left">故障恢复时间 </div> </td> 
    <td> <input type="text" name="gzhftime"  onFocus="WdatePicker({startDate:'%y-%M-%d 00:00:00',dateFmt:'yyyy-MM-dd HH:mm:ss',alwaysUseStartDate:true})" value="2009-03-16 09:20"/> </td> 
</tr> <tr> 
    <td> <div>响应时长(到达现场时间 减去 客户报障时间 ) </div> </td> 
    <td> <input type="text" name="xytime"/> </td> 
</tr> <tr> 
    <td> <div>修复时长(故障修复时间 减去 到达现场时间) </div> </td> 
    <td> <input type="text" name="xftime"/> </td> 
</tr> <tr> 
    <td> <div align="left">故障累计时间(故障修复时间 减去 客户报障时间) </div> </td> 
    <td> <input type="text" name="ljtime"/> </td> 
</tr> 
</table> <input type=button value="OK" onclick="showTime()"> 
<script language="javascript"> 
<!-- 
function WdatePicker(){} function showTime(){//显示时间差 
var obj=document.getElementById("time").getElementsByTagName("input"); 
if (obj[0].value!="" && obj[1].value!="") obj[3].value=getTime(obj[0].value,obj[1].value) 
else obj[4].value="" 
if (obj[1].value!="" && obj[2].value!="") obj[4].value=getTime(obj[1].value,obj[2].value) 
else obj[5].value="" 
if (obj[0].value!="" && obj[2].value!="") obj[5].value=getTime(obj[0].value,obj[2].value) 
else obj[5].value="" 

function getTime(v1,v2){//计算时间差 
var t1=v1.split(" ") 
var t2=v2.split(" ") 
var tt1=t1[0].split("-") 
var tt2=t2[0].split("-") 
t1=tt1[1]+"/"+tt1[2]+"/"+tt1[0]+" "+t1[1];//转化为标准时间格式(月/日/年 时:分:秒) 
t2=tt2[1]+"/"+tt2[2]+"/"+tt2[0]+" "+t2[1];//转化为标准时间格式(月/日/年 时:分:秒) 
//var addm=Math.floor((Date.parse(t2)-Date.parse(t1))/1000/60);//时间差(单位:分钟)不足1分钟不计 
var addm=Math.ceil((Date.parse(t2)-Date.parse(t1))/1000/60);//时间差(单位:分钟)不足1分钟按1分钟计 
var d=Math.floor(addm/60/24) 
var h=Math.floor((addm-d*60*24)/60) 
var m=addm-d*60*24-h*60 
return d+"天"+h+"小时"+m+"分钟"//返回制定格式时间 

//--> 
</script> 以上是源代码,显示出来的效果是:1天1小时10分钟现在想把最后运算结果显示改为:25:10

解决方案 »

  1.   

    <table border="1" width="100%" id="time"> 
    <tr> 
        <td> <div>客户报障时间 </div> </td> 
        <td> <input type="text" name="khbztime" onFocus="WdatePicker({startDate:'%y-%M-%d 00:00:00',dateFmt:'yyyy-MM-dd HH:mm:ss',alwaysUseStartDate:true})" value="2009-03-14 09:00"/> </td>  //调用My97DatePicker4.0 日期控件取得日期时间 
    </tr> <tr> 
        <td> <div>到达现场时间 </div> </td> 
        <td> <input type="text" name="ddtime" onFocus="WdatePicker({startDate:'%y-%M-%d 00:00:00',dateFmt:'yyyy-MM-dd HH:mm:ss',alwaysUseStartDate:true})" value="2009-03-15 10:10"/> </td> 
    </tr> <tr> 
        <td class="index"> <div align="left">故障恢复时间 </div> </td> 
        <td> <input type="text" name="gzhftime"  onFocus="WdatePicker({startDate:'%y-%M-%d 00:00:00',dateFmt:'yyyy-MM-dd HH:mm:ss',alwaysUseStartDate:true})" value="2009-03-16 09:20"/> </td> 
    </tr> <tr> 
        <td> <div>响应时长(到达现场时间 减去 客户报障时间 ) </div> </td> 
        <td> <input type="text" name="xytime"/> </td> 
    </tr> <tr> 
        <td> <div>修复时长(故障修复时间 减去 到达现场时间) </div> </td> 
        <td> <input type="text" name="xftime"/> </td> 
    </tr> <tr> 
        <td> <div align="left">故障累计时间(故障修复时间 减去 客户报障时间) </div> </td> 
        <td> <input type="text" name="ljtime"/> </td> 
    </tr> 
    </table> <input type=button value="OK" onclick="showTime()"> 
    <script language="javascript"> 
    <!-- 
    function WdatePicker(){} function showTime(){//显示时间差 
    var obj=document.getElementById("time").getElementsByTagName("input"); 
    if (obj[0].value!="" && obj[1].value!="") obj[3].value=getTime(obj[0].value,obj[1].value) 
    else obj[4].value="" 
    if (obj[1].value!="" && obj[2].value!="") obj[4].value=getTime(obj[1].value,obj[2].value) 
    else obj[5].value="" 
    if (obj[0].value!="" && obj[2].value!="") obj[5].value=getTime(obj[0].value,obj[2].value) 
    else obj[5].value="" 

    function getTime(v1,v2){//计算时间差 
    var t1=v1.split(" ") 
    var t2=v2.split(" ") 
    var tt1=t1[0].split("-") 
    var tt2=t2[0].split("-") 
    t1=tt1[1]+"/"+tt1[2]+"/"+tt1[0]+" "+t1[1];//转化为标准时间格式(月/日/年 时:分:秒) 
    t2=tt2[1]+"/"+tt2[2]+"/"+tt2[0]+" "+t2[1];//转化为标准时间格式(月/日/年 时:分:秒) 
    //var addm=Math.floor((Date.parse(t2)-Date.parse(t1))/1000/60);//时间差(单位:分钟)不足1分钟不计 
    var addm=Math.ceil((Date.parse(t2)-Date.parse(t1))/1000/60);//时间差(单位:分钟)不足1分钟按1分钟计 
    var d=Math.floor(addm/60/24) 
    var h=Math.floor((addm-d*60*24)/60) 
    var m=addm-d*60*24-h*60 
    return (d*24+h)+":"+m//返回制定格式时间 

    //--> 
    </script>