2017-03-06 170 views
1

我有一個輸入是這樣的:輸入[類型=時間]預計日期

<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服務器獲取數據。我想輸入加載page.But時設置爲該值我得到這個錯誤:

Error: [ngModel:datefmt] Expected 08:00:00 to be a date

現在,我已經試過這樣:

$filter('date')(new Date(data.startHour), 'HH:mm'); 

但我得到invalid date

任何幫助將是appreciated.Thank你

+1

''? –

+0

新的日期(年,月,日,小時,分鐘,秒,毫秒) – digit

+0

from angularDocs =>模型必須始終是一個Date對象,否則AngularJS會拋出一個錯誤。 – digit

回答

0

好了,遺憾的是JS不支持只是一個時間的日期。 HH:mm不是有效的日期格式:https://www.w3schools.com/js/js_date_formats.asp

您可以手動處理它,也可以使用虛假的日期作爲您不關心的日期部分。

(我試圖找到適合你的好時機對象的解決方案,但我沒有看到太多在那裏。希望別人具有更平滑的解決方案。)

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); 

}); 

DEMO on PLNKR.

相關問題