我的模型基于JSON对象,日期为2012-12-13T00:00:00-07:00
我想使用日期选择器ui-date。
我有以下代码可以使用。
<input ng-model="course.startDate" value="{{item.startDate | date: 'MM/dd/yyyy'}}" ui-date ng-required="true">
但是,我不认为我应该使用value="{{item.startDate | date: 'MM/dd/yyyy'}}"
部分,但没有它,输入不会加载模型中的值。
当我选择一个日期时,模型被绑定并正常运行,当页面加载时它只显示为空。
初始化此输入的正确方法是什么?
答案 0 :(得分:3)
使用ui-date
和ng-model
就足够了:
<div ng-controller="MyCtrl">
<input ng-model="date" ui-date>
</div>
如果MyCtrl
定义如下:
function MyCtrl($scope) {
$scope.date= new Date();
}
这是一个jsFiddle:http://jsfiddle.net/MvGFF/2/
您必须知道的是ui-date
期望模型值是Date的实例,也许您传递的是字符串(或其他类型)值?
如果您的模型包含字符串值并且您仍想使用日期选择器,则需要添加ui-date-format
指令,如下例所示:
<input ng-model="date" ui-date ui-date-format>
控制器的定义如下:
function MyCtrl($scope) {
$scope.date= "2012-12-13T00:00:00-07:00";
}
这是一个jsFiddle:http://jsfiddle.net/d4xz2/1/
答案 1 :(得分:-1)
这很好用:
<input type="text" ng-model="nota.fechaPub" value="{{nota.fechaPub}}" ui-date ui-date-format>
其中$ scope.nota.fechaPub值为“2013-01-14T23:00:00.000Z”
文本框中显示的值为“01/15/2013”