<SCRIPT LANGUAGE="JavaScript"><!--
function timecompute(start_time, end_time)//例如2003-10-7 17:00和2005-10-13 16:00
{
  var n1 = new Date(start_time.replace(/-/g, "\/")).getTime();
  var n2 = new Date(end_time.replace(/-/g, "\/")).getTime();
  if(n1>=n2)//这一不正确,不知道该怎么写
     alert("起止时间不能大于终止时间");
  else
  {
    var n = n2-n1;
    alert("相隔 "+ (n/(60*60*1000)) +" 个小时!");
  }
}
timecompute("2003-10-7 17:00", "2005-10-13 16:00");
//--></SCRIPT>

解决方案 »

  1.   

    <script language="vbscript">
    function timecompute(start_time,end_time)
    if datediff("s",start_time,end_time)<0 then
    timecompute="起止时间不能大于终止时间"
    else
    timecompute=datediff("h",start_time,end_time)
    end if
    end function
    msgbox timecompute("2007-10-7 17:00","2007-10-7 19:00")
    </script>
      

  2.   

    <SCRIPT LANGUAGE="JavaScript">
    <!--
    function timecompute(start_time, end_time)//例如2003-10-7 17:00和2005-10-13 16:00
    {
      var date1 = new Date(start_time.replace(/-/g, "\/")).getTime();//将字符串转换为日期型再比较
      var date2 = new Date(end_time.replace(/-/g, "\/")).getTime();
      if(date1>=date2)//日期型可以直接比较了,开始你的程序是string型不能这样比较
         alert("起止时间不能大于终止时间");
      else
      {
        var n = date2-date1;
        alert("相隔 "+ (n/(60*60*1000)) +" 个小时!");
      }
    }
    timecompute("2003-10-7 17:00", "2005-10-13 16:00");
    //--></SCRIPT>