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

时间:2014-12-07 13:48:49

标签: javascript angularjs html5 date input

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

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

我尝试了几种日期格式组合,例如:

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

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

此类输入的正确格式是什么?

感谢您的帮助。

1 个答案:

答案 0 :(得分: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