使用angularJS设置HTML5日期输入字段的默认值

时间:2013-11-28 08:57:46

标签: javascript angularjs momentjs

我希望将我生成的默认值绑定到日期和时间输入字段。我尝试了ng-model并将其直接绑定到value属性。但它似乎都没有用。有没有办法让它发挥作用?

编辑:另外,如何绑定时间输入字段?

<body ng-app="myApp">
<div ng-controller="MyCtrl">
    <input type="date" ng-model="date" value="{{date}}">
        <p>{{date}}</p>
    <input type="time" ng-model="time" value="{{time}}">    
</div>

这是一个小提琴:http://jsfiddle.net/chrisyeung/bF9Pq/

4 个答案:

答案 0 :(得分:29)

如果您使用的是chrome,则必须将日期格式指定为'yyyy-MM-dd'。

$scope.date = $filter("date")(Date.now(), 'yyyy-MM-dd');

否则就行不通。这是一个有用的版本http://jsfiddle.net/bF9Pq/4/

答案 1 :(得分:6)

Working fiddle

{{date | date:'MM/dd/yyyy'}}

我将其更改为日期并添加日期过滤器。

答案 2 :(得分:3)

value="{{date}}" 

导致init错误: 指定值“{{datum_default}}”不符合所需格式“yyyy-MM-dd”。

溶液: 不要在模板中设置日期!

<input type="date" ng-model="date_code">

在控制器中指定日期!

$scope.date_code = new Date();

答案 3 :(得分:0)

您也可以这样做:

$scope.date = new Date().toLocaleDateString('en-CA');