我有这样的输入:
<input type="time" ng-model="reunion.startHour" name="time"
placeholder="HH:mm:ss" min="08:00:00" max="20:00:00" class="form-control"
id="time" required />
我从对象有字段time=08:00:00
的服务器获取数据。我希望在加载页面时输入设置为该值。但是我收到此错误:
错误:[ngModel:datefmt]预期
08:00:00
为日期
现在我已经尝试过了:
$filter('date')(new Date(data.startHour), 'HH:mm');
但我得到invalid date
。
任何帮助将不胜感激。谢谢你
答案 0 :(得分:0)
嗯,不幸的是,JS只用一段时间就不支持日期。 HH:mm
不是有效的日期格式:https://www.w3schools.com/js/js_date_formats.asp
您既可以手动处理,也可以使用假日期作为您不关心的日期部分。
(我试图为你找到一个好的时间对象解决方案,但我不会在那里看到太多。希望其他人有更顺畅的解决方案。)
答案 1 :(得分:0)
适用于AngularJS 1.6
<input type="time" ng-model="startHour" name="time"
placeholder="HH:mm:ss" min="08:00:00" max="20:00:00" class="form-control"
id="time" required />
<br><p ng-show="startHour">{{startHour | date : 'shortTime' }}</p>
<br><p ng-hide="startHour">Enter Valid Time</p>
app.controller("myVm",function($scope) {
var vm = $scope;
vm.startHour = new Date(0);
vm.startHour.setHours(8);
});