我有一个表单和一个按钮,可以加上一些时间(hh:MM),但是时间是一个span标签。
在Firefox上运行良好,但是当我在Chrome上测试时,Date()无法正常工作。发生了什么?
//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;
},
最佳答案
我想这是由于构造函数的输入而发生的!如果有时间,您应该以毫秒为单位输入数字。数据对象具有以下构造函数:
新的Date();
新的Date(值);
新的Date(dateString);
新的日期(年,月[,日期[,小时[,分钟[,秒[,毫秒]]]]]));
您可以查看Developer.mozilla,然后可以查看有关格式的更好说明。
也许Firefox正在转换为在该部分代码中包含某些内容。我发现了有关数据输入格式的其他解释,您也可以查看以下内容:Convert String to Date