我正在尝试使用html5 date
类型获取日期,并且它用于带有一些参数的api调用,但我将从api收到以下错误消息。
日期字段必须为yyyy-mm-ddTH:i:s + Z
我会以这种格式阅读日期
Sun Jun 12 2016 00:00:00 GMT+0530 (India Standard Time)
那么如何将上述日期转换为yyyy-mm-ddTH:i:s+Z
格式?
注意: 我正在使用javascript
更新
我使用toISOString()
方法,但它没有用
答案 0 :(得分:1)
使用momentjs ...
非常简单请检查我的fiddle
var time = 'Sun Jun 12 2016 00:00:00 GMT+0530';
time = moment(time).format("YYYY-MM-DDThh:mm:ssZ");
$('.time').text(time);
希望这有帮助!
答案 1 :(得分:0)
我希望这就是你想要的:
function getTimeZone(date) {
var offset = date.getTimezoneOffset(),
o = Math.abs(offset);
return (offset < 0 ? "+" : "-") + ("00" + Math.floor(o / 60)).slice(-2) + ":" + ("00" + (o % 60)).slice(-2);
}
function getFormattedDate(date) {
var day = date.getDate();
var month = date.getMonth();
var year = date.getFullYear();
var hours = date.getHours();
var mins = date.getMinutes();
var sec = date.getSeconds();
var timeZone = getTimeZone(date);
return year + '-' + month + '-' + day + ' ' + hours + ':' + mins + ':' + sec + ' ' + timeZone;
}
document.write(getFormattedDate(new Date()));
&#13;
这将打印:2016-5-2 19:54:59 +06:00
JsFiddle链接:https://jsfiddle.net/sktajbir/pmbdk33L/2/
仅供参考,getTimeZone()函数取自here。
感谢。