2017-10-02 8 views
2

2つの日付変数があり、jqueryを使用してHH:mm形式のテキストボックスに時間を戻したいとします。 私は現在の日付と日付の2つのテキストボックスを持っています。私はそれらの値を得ています:2つの日付を減算し、jqueryのテキストボックスに時間と分として表示するにはどうすればいいですか?

このコードに適合するようにデルタと日付との差を変換する方法。

var delta = Math.abs(date_future - date_now)/1000; 

var days = Math.floor(delta/86400); 
delta -= days * 86400; 

var hours = Math.floor(delta/3600) % 24; 
delta -= hours * 3600; 

var minutes = Math.floor(delta/60) % 60; 
delta -= minutes * 60; 

var seconds = delta % 60; 

上記の変数を日数分のテキストボックスにhh:mmの形式で入力したいとします。 誰でも助けることができますか? Date

d=new Date(); 
hr=d.getHours(); 
min=d.getMinutes(); 

答えて

0

使用はまた、あなたが使用できる文字列形式で取得する:

var d1 = new Date(dateString); 
var d2 = new Date(year, month, day, hours, minutes, seconds, milliseconds); 
d.toLocaleTimeString() // "11:24:57 PM" 
//and can get parts using... 
d.toLocaleTimeString('en', { minute:"numeric" });//gives numeric number of minutes 

あなたも、同様の文字列表現を取得するためにd.toTimeString()を使用することができます。 https://www.w3schools.com/js/js_date_methods.asp https://www.w3schools.com/jsref/jsref_obj_date.asp


あなたも、返信用

var str1 = "34:22"; 
var times1 = str1.split(":"); 
var str2 = "34:22"; 
var times2 = str2.split(":"); 
var deltaMin = parseInt(times1[1]) - parseInt(times2[1]) 
var deltaHour = parseInt(times1[0]) - parseInt(times2[0]) 
if(deltaMin<0){ 
    --deltaHour; 
    deltaMin = 60 + deltaMin; 
} 
+0

感謝を行うことができます。しかし、時間が24を超えるならば、私はまだhh:mmを得るどんな慣習もあります。例えば、 26:44描写26時間44分 –

関連する問題