c# 2.0 - JavaScript (using c#)

c# 2.0 - JavaScript (using c#)

本文关键字:using JavaScript      更新时间:2023-09-26

我想找到两个时间分量之间的差异,但我没有得到我想要的!

我在一个表单中有两个下拉列表组件,

下面是我的代码:
input set 1:
timefrm_ 4 -> 18:00  
timeto_4 -->  23: 00
input set 2 : 
timefrm_ 4 -> 23:00
timeto_4 --> 01 : 00

JavaScript代码:

function time_diif4()
{
 var timespan4from = HMStoSec1(timefrm_4);
 var timespan4to = HMStoSec1(timeto_4);
 var timespan_4 =  timespan4to - timespan4from ;
 var diff4 = convertMinutes(timespan_4);

               alert(timespan4from);
               alert(timespan4to);
               alert(timespan_4);
               alert(diff4);
}

var secondsPerMinute = 60;
var minutesPerHour = 60;
function HMStoSec1(T) 
   { 
// h:m:s
  var A = T.split(/'D+/) ; 
  return ((A[0]*60 + +A[1])*60 ) 
    }
function convertMinutes(intSeconds) 
{
return Math.floor(intSeconds/secondsPerMinute);
}

我的输出(作为警告)是:

用于输入集1:

64800(秒)

82800(秒)

18000(秒)

300(分钟)—5小时(18:00)23点)

用于输入集2:

82800年

5400年

-77400(错误应该是第二天)

-1290年

只需将剩余的值除以一天分钟。

function convertMinutes(intSeconds) { 
   var result = Math.floor(intSeconds/secondsPerMinute); 
   while(result < 0)
      result = result + minutesPerHour * 24;
   return result;
}

当开始时间大于结束时间时,表示结束时间属于第二天。这段代码将解决这个问题。但是如果你不希望这种情况发生,你应该阻止用户选择这个数据。