我有<input type="datetime-local" ng-model="StartDateTime"/>
。
如果客户端计算机上有 GMT + 3 并输入01.01.2016 03.00.00
,则$scope.StartDateTime
等于01.01.2016 00.00.00
。我不喜欢它,我希望我的输入处理真正的$scope.StartDateTime
值,忽略客户端的语言环境。我希望它显示真实的 UTC 日期和时间。我该如何解决这个问题?谢谢!
答案 0 :(得分:1)
喜欢这个。 https://plnkr.co/edit/dQEqJivih4i9joCbc54f?p=preview
var app = angular.module('myApp', []);
app.controller('DateCtrl', function($scope) {
$scope.currentDate = new Date('01-01-2016 03:00:00');
});
<!DOCTYPE html>
<html ng-app="myApp">
<head>
<meta charset="utf-8" />
<title>AngularJS Plunker</title>
<script>document.write('<base href="' + document.location + '" />');</script>
<link rel="stylesheet" href="style.css" />
<script data-require="angular.js@1.4.x" src="https://code.angularjs.org/1.4.9/angular.js" data-semver="1.4.9"></script>
<script src="app.js"></script>
</head>
<body ng-controller="DateCtrl">
<div>{{currentDate | date:'d MMMM yyyy' : 'UTC'}}</div>
<div>{{currentDate | date:'d MMMM yyyy'}}</div>
</body>
</html>