在我的应用用户选择日期,但我也需要发送到服务器当前时间。
这是我的初始代码:
$scope.event = {
'Name': '',
'Date': $filter('date')(new Date(), 'yyyy-MM-dd'),
};
但我需要将其更改为以下格式:
2015-01-20T20:00:00Z
真的吗?我如何将当前时间附加到我在此处发布的格式的输入值?
我是这样做的: var x = new Date();
var h = x.getHours();
var m = x.getMinutes();
var s = x.getSeconds();
var z = x.getTimezoneOffset();
$scope.event.Date = $scope.event.Date + 'T' + h + ':' + m + ':' + s + z;
但似乎这段代码很难看,也许我做错了什么?
答案 0 :(得分:2)
看起来您所使用的格式为ISO 8601格式:
$scope.event.Date = new Date().toISOString(); // "2015-03-04T14:28:19.616Z"
答案 1 :(得分:0)
查看官方API中的示例:
https://docs.angularjs.org/api/ng/filter/date
您可以看到以下内容:
{{1288323623006 | date:'yyyy-MM-dd HH:mm:ss Z'}}: 2010-10-29 04:40:23 +0100
然后您可以使用'yyyy-MM-ddTHH:mm:ssZ'作为格式而不是'yyyy-MM-dd'
$scope.event = {
'Name': '',
'Date': $filter('date')(new Date(), 'yyyy-MM-ddTHH:mm:ssZ'),
};