如何使用angularjs更改显示的日期格式

时间:2017-04-25 05:02:50

标签: javascript html angularjs

我的datetime格式为<{1}}格式,例如。 &#34; 2017-04-03 05:00:07&#34; 。我不想更改值,但需要将值显示为"YYYY-MM-DD HH:mm:ss"格式,例如。 &#34; 2017年4月3日&#34;

无论如何使用html以不同的格式显示值?

3 个答案:

答案 0 :(得分:0)

实现您的要求的简单方法是使用Moment.js

&#13;
&#13;
var TodayDate = moment().format('MMM DD, YYYY');
var selectedDate = moment('2017-04-03 05:00:07').format('MMM DD, YYYY');
console.log("today = "+TodayDate);
console.log("selected = "+selectedDate);
&#13;
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

参考下面链接中的角度过滤器。

使用这个&#39; MMM&#39;格式在角度js中可用的默认日期过滤器中获取月份并使用所需顺序的格式

{{1288323623006 |日期:&#39; MMM-dd-yyyy&#39;}}试试这个

https://docs.angularjs.org/api/ng/filter/date

答案 2 :(得分:0)

如下所示创建指令并在HTML中使用:

<强>指令:

var app = angular.module("MyApp", []);

var datefrmt = "yyyy-MM-dd";

app.directive('dateFormateModel', function (dateFilter) {
    return {
        require: 'ngModel',
        link:function (scope, elm, attrs, ctrl) {            
            var dateFormat = datefrmt;           
            ctrl.$formatters.unshift(function (modelValue) {
                return dateFilter(modelValue, dateFormat);
            });
        }
    };
});

<强> HTML:

<div class="propertyValue"><input type="text" ng-model="gc.tempApplicationSettingModel.CreatedDate" date-formate-model class="form-control"  /></div>