Javascript 如何使用ng模型以dd MM YYYY格式在HTML中格式化日期

Javascript 如何使用ng模型以dd MM YYYY格式在HTML中格式化日期,javascript,angularjs,date,Javascript,Angularjs,Date,我想在ng模型中将HTML中的日期格式化为dd-mm-yyyy格式,但我得到的结果是mm-dd-yyyy格式。我曾尝试使用interpolator,它工作得很好,我想知道使用ng模型以HTML本身的dd-mm-yyyy格式获得输出 <label class="item item-input"> <input placeholder="Date" type="date" date="dd-MM-yyyy" ng-model="vm.advance.date"></

我想在ng模型中将HTML中的日期格式化为dd-mm-yyyy格式,但我得到的结果是mm-dd-yyyy格式。我曾尝试使用interpolator,它工作得很好,我想知道使用ng模型以HTML本身的dd-mm-yyyy格式获得输出

<label class="item item-input">
  <input placeholder="Date" type="date" date="dd-MM-yyyy" ng-model="vm.advance.date"></input>
</label>
angular.module'app',['ui.bootstrap'].controller'MyController',函数{ 这是预付款={ 日期:新日期 }; }


您可以将值与筛选器一起使用:

{{vm.advance.date | date:'dd-MM-yyyy'}}

实际上最好使用datepicker。它有更多灵活的工具。

请检查以下示例

angular.module('app', [])

.controller('Ctrl', function($scope){
  $scope.firstDate = new Date();
    $scope.secondDate = "2014-02-20";
})


// Here is where the magic works
.directive('date', function (dateFilter) {
    return {
        require:'ngModel',
        link:function (scope, elm, attrs, ctrl) {

            var dateFormat = attrs['date'] || 'yyyy-MM-dd';

            ctrl.$formatters.unshift(function (modelValue) {
                return dateFilter(modelValue, dateFormat);
            });
        }
    };
})
Javascript使用$filter实现这一点,但类型将是string而不是Date,即使您使用html或js方式的filter“|”管道

角度。模块'inputExample',[] .controller'ExampleController',['$scope','$filter',函数$scope,$filter{ $scope.advance=$filter'date'新日期'dd-MM-yyyy'; }];
我假定您使用的是标准HTML输入控件,因此标准控件的日期格式来自本地系统的datetime格式。作为一个解决方案,你可以观察范围模型,并使用一个角度内置过滤器格式化date.Bucka我已经尝试了上述解决方案,但我希望它在ng-model@Slavac然后,如何在输入的同时添加一个日期选择器