AngularJS和输入类型=日期,如何格式化模型数据?

问题描述 投票:1回答:1

我有以下表单输入,我正在尝试填写范围数据:

<input type="date" name="editCallForm.date"  ng-model="editCallForm.date">

我尝试了一些日期格式的组合,例如:

moment($rootScope.formData.date).format('DD/mm/YYYY');

但没有运气(时间输入是没有问题的工作)。

这种输入的正确格式是什么?

谢谢你的帮助。

javascript angularjs html5 date input
1个回答
0
投票

日期应该是javascript日期对象reference这说

The model must always be a Date object, 

所以

你的代码应该是

<input type="date" name="editCallForm.date"  ng-model="editCallForm.date">

$scope.editCallForm.date = new Date(); // set to today

如果你想格式化这个日期,你可以按照Ben的回答,对于Ex:

$scope.formattedDate = $filter('date')($scope.dateObj, "dd/MM/yyyy");

不要忘记在控制器中添加$filter依赖项

这是一个Demo Plunker请检查

请注意,此功能不适用于较旧的角度版本。它的工作角度为1.3及以上

请检查angularjs更改日志here中的重大更改


如果您需要在旧版本的angularjs中执行此操作,则可以使用类似angular-ui bootstrap datepicker的内容

这是Demo Plunker

© www.soinside.com 2019 - 2024. All rights reserved.