Javascript 添加分钟到日期在 IE 和 Safari 中不起作用
Javascript Add minutes to date not working in IE and Safari
我想在日期中添加分钟并显示 it.I 我正在使用以下代码
function dt(){
var d = new Date();
d.setMinutes(d.getMinutes()+15*60);
var theDate = d.getFullYear() + '-' + ( d.getMonth() + 1 ) + '-' + d.getDate()+' '+d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
//var d1 = new Date( Date.parse( theDate ) + s1*60*1000 );
var d1=new Date(theDate);
var hours = d1.getHours();
var minutes = d1.getMinutes();
var ampm = hours >= 12 ? 'PM' : 'AM';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0'+minutes : minutes;
var strTime = hours + ':' + minutes + ' ';
var t=( d1.getMonth() + 1 )+ '/' + d1.getDate() + '/' + d1.getFullYear() +' '+strTime; alert(t+ampm);
}
dt();
此代码在 IE 和 safari 中的 Chrome.But 中运行良好,它正在返回 NAN:NAN:NAN 12:NAN AM。
任何人都请帮助。
此致
雷卡
尝试替换:
var d1 = new Date(theDate);
与:
var d1 = new Date(d.getFullYear(), d.getMonth() + 1, d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds());
将 Date contructor 与日期字符串一起使用有一些限制
行:
d.setMinutes(d.getMinutes()+15*60);
将使日期增加 15 小时。为什么不呢:
d.setHours(d.getHours()+15);
然后你通过创建一个字符串然后解析它来复制一个日期:
var theDate = d.getFullYear() + '-' + ... + d.getSeconds();
var d1 = new Date(theDate);
不要那样做。曾经。解析日期字符串是不可靠的(正如您所发现的)并且不推荐。要复制日期,请使用:
var d1 = new Date(+d);
我想在日期中添加分钟并显示 it.I 我正在使用以下代码
function dt(){
var d = new Date();
d.setMinutes(d.getMinutes()+15*60);
var theDate = d.getFullYear() + '-' + ( d.getMonth() + 1 ) + '-' + d.getDate()+' '+d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds();
//var d1 = new Date( Date.parse( theDate ) + s1*60*1000 );
var d1=new Date(theDate);
var hours = d1.getHours();
var minutes = d1.getMinutes();
var ampm = hours >= 12 ? 'PM' : 'AM';
hours = hours % 12;
hours = hours ? hours : 12; // the hour '0' should be '12'
minutes = minutes < 10 ? '0'+minutes : minutes;
var strTime = hours + ':' + minutes + ' ';
var t=( d1.getMonth() + 1 )+ '/' + d1.getDate() + '/' + d1.getFullYear() +' '+strTime; alert(t+ampm);
}
dt();
此代码在 IE 和 safari 中的 Chrome.But 中运行良好,它正在返回 NAN:NAN:NAN 12:NAN AM。
任何人都请帮助。
此致
雷卡
尝试替换:
var d1 = new Date(theDate);
与:
var d1 = new Date(d.getFullYear(), d.getMonth() + 1, d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds());
将 Date contructor 与日期字符串一起使用有一些限制
行:
d.setMinutes(d.getMinutes()+15*60);
将使日期增加 15 小时。为什么不呢:
d.setHours(d.getHours()+15);
然后你通过创建一个字符串然后解析它来复制一个日期:
var theDate = d.getFullYear() + '-' + ... + d.getSeconds();
var d1 = new Date(theDate);
不要那样做。曾经。解析日期字符串是不可靠的(正如您所发现的)并且不推荐。要复制日期,请使用:
var d1 = new Date(+d);