2017-05-03 65 views
0

我有一個表格和一個按鈕,加上一些分鐘時間(HH:MM),但時間跨度標籤。字符串轉換爲時間,並添加一些分鐘

在Firefox的效果很好,但是當我在Chrome的測試不工作的日期()。發生了什麼?

//Botão adicionar horário agenda. 
$('.button').click(function() { 
    var $duration_schedule = $('#duration'); 
    var duration = $duration_schedule.val(); // 30 
    var hour = $('.time_schedule_form').text(); // 10:00 
    var new_time = self.Plus_minutes(hour, duration); 
    alert(new_time); // 10:30 
}); 


Plus_minutes: function(hour, duration) { 
    var time, new_hour, hours = ''; 
    time  = new Date("T"+hour); // Erro at Chrome 
    time.setTime(time.getTime() + duration*60000); 
    hours  = time.getHours().toString(); 
    minutes = time.getMinutes().toString(); 
    if (minutes.length > 1) { 
     new_hour = hours + ':' + minutes; 
    } else { 
     new_hour = hours + ':0' + minutes; 
    } 

    return new_hour; 
}, 

回答

1

我想這是因爲構造函數的輸入而發生的!在時間的情況下,你應該把數字以毫秒爲單位。數據對象具有下列構造函數:

  • new Date();
  • new Date(value);
  • new Date(dateString);
  • 新的日期(年,月[日期[,小時,分鐘,秒[毫秒]]]]]);

你可以看看Developer.mozilla然後你可以檢查有關格式的更好的解釋。

也許火狐被轉換爲包括代碼的那部分東西。我發現了數據輸入格式,其他的解釋,你可以看一看太:Convert String to Date

0

UTC的正確格式將類似於2013-02-27T17:00:00Z(Z代表祖魯時間)。如果不存在,則附加Z以獲取正確的UTC日期時間字符串。

0

你可以使用setMinutes使用getMinutes更新實現這一目標。

newdate.setMinutes(newdate.getMinutes() + 10); 
+0

當我將字符串轉換爲日期我的真正的問題occours。時間=新日期(「T」+小時);這在Chrome中不起作用。 –

相關問題