嗨,我正在尝试将值从javascript传递到输入时间标签-角度JS。 这是以下代码。
JS :
$scope.from="09:00:00"
$scope.from="17:00:00"
HTML :
From : <input type="time" ng-model="from" >
To : <input type="time" ng-model="to" >
在输入元素中没有值被更新。上面的代码有什么错误?
这里是完整代码:
<!DOCTYPE html>
<html>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.9/angular.min.js"></script>
<body>
<div ng-app="myApp" ng-controller="myCtrl">
From: <input type="time" ng-model="fromTime"><br>
To: <input type="time" ng-model="toTime"><br>
</div>
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.fromTime="09:00:00";
$scope.toTime="17:00:00";
});
</script>
</body>
</html>
错误:[ngModel:datefmt]
答案 0 :(得分:1)
angularjs 1.3版之后,所有与日期相关的输入都需要一个类型为Date()的模型。 documentation
因此,您需要像这样将值更改为Date对象。 :
$scope.from= new Date(1970, 0, 1, 09, 0, 0);
$scope.to= new Date(1970, 0, 1, 17, 0, 0);
查看演示:fiddle
答案 1 :(得分:0)
从文档中:
错误:ngModel:datefmt
模型不是日期对象
说明
所有与日期相关的输入,例如
<input type="date">
都要求模型是Date
对象。如果模型是其他模型,则会引发此错误。
有关更多信息,请参见