我有一個頁面上有兩個時間值:做時間的減法運算與jQuery
8:00
22:30
我需要從22:30減去8和14:30獲得。
在jQuery中有直接的方法嗎?如果有必要,插件對我來說很好。
更新: 第二個數字是總計所以它也可能是像
48:45
什麼我從中減去應該只是從中減去值作爲一個整體,沒有做任何日期相關的計算。
我有一個頁面上有兩個時間值:做時間的減法運算與jQuery
8:00
22:30
我需要從22:30減去8和14:30獲得。
在jQuery中有直接的方法嗎?如果有必要,插件對我來說很好。
更新: 第二個數字是總計所以它也可能是像
48:45
什麼我從中減去應該只是從中減去值作爲一個整體,沒有做任何日期相關的計算。
你可以用javascript來做到這一點。
假設您有start = '8:00'
和end = '22:30'
。代碼如下:
<script type="text/javascript">
var start = '8:00';
var end = '23:30';
s = start.split(':');
e = end.split(':');
min = e[1]-s[1];
hour_carry = 0;
if(min < 0){
min += 60;
hour_carry += 1;
}
hour = e[0]-s[0]-hour_carry;
diff = hour + ":" + min;
alert(diff);
</script>
最後,diff
是你的時差。
這樣做的伎倆,謝謝 – Jason 2010-01-12 23:45:20
偉大的傢伙!你幫我!謝謝。 – 2017-12-28 23:11:01
jquery沒有任何內置的日期解析/操作。我也沒有看到很多插件。 最好的辦法是創建一個函數,將兩個日期轉換爲整數,進行加法運算,然後將結果轉換爲日期。
日期!=次。 – nickf 2010-01-12 23:15:13
jQuery是不是必需的,您就可以使用一些簡單的做,在直接的JavaScript:
function timeInHours(str)
{
var sp = str.split(":");
return sp[0] + sp[1]/60;
}
function hoursToString(h)
{
var hours = floor(h);
var minutes = (h - hours)*60;
return hours + ":" + minutes;
}
var time1 = "08:00";
var time2 = "22:30";
var tot = hoursToString(timeInHours(time2) - timeInHours(time1));
我會用'timeInMinutes'和'minutesToString'去,只能用於浮點數上的整型操作。 – nickf 2010-01-12 23:17:37
我想試試這個代碼 - :
var start = '8:00';
var end = '23:30';
var startDate = new Date("1/1/1900 " + start _time);
var endDate = new Date("1/1/1900 " + end);
var difftime=endDate - startDate; //diff in milliseconds
你需要能夠在一夜之間? – 2010-01-12 22:56:00
沒有過夜...第二個值總是總共幾個小時。 – Jason 2010-01-12 22:57:33