2016-04-29 74 views
1

我使用UI Bootstrap 1.3.2,Bootstrap 3.3.6和Angularjs 1.5.5,但我有一個uib-datepicker彈出的問題。如果對應的輸入字段的值爲空/未設置,日曆顯示未定義日期字段(NULL,NAN):uib日期選擇器彈出日曆與空/ NaN如果最初輸入空

enter image description here

碼輸入字段的:

<input type="text" uib-datepicker-popup="dd.MM.yyyy" datepicker-options="datepickerOptions" ng-model="mydto.teilnahmebis" /> 

的initDate選項被忽略 - 來自控制器的代碼:

$scope.datepickerOptions = { 
        minDate : new Date('2010-01-01'), 
        initDate : new Date() 
       }; 

如果輸入字段已經有一個值,彈出窗口將工作。但通常情況並非如此。任何想法,如何解決這個問題?謝謝你的回答。

+0

你可以指定你的模型'mydto .teilnahmebis'到指定格式的當前日期。 –

+0

這不起作用,因爲在save()操作後傳送到數據庫的模型不應該有任何值。有時它需要爲空。只有日曆應該被初始化。 –

+0

是的,它應該是空的,它的工作就是這樣。它的工作正常。你可能做錯了什麼。你檢查了你的控制檯嗎? –

回答

1

我有同樣的問題,你的NG-模型變量與invalid date數據... 檢查設置,如果要覆蓋默認值,並將其設置爲null

+0

是的,的確如此,日期是「無效日期」。我通過編碼解決了: if($ scope.mydto.teilnahmebis!= null){scope.mydto.teilnahmebis = moment($ scope.mydto.teilnahmebis,'DD.MM.YYYY').toDate(); } –

+0

提示:如果ng-model不爲null並且是一個(有效)日期,那麼我必須將交付的String日期轉換爲javascript日期,否則我會在uib-datepicker-popup中遇到其他問題。如果我將空字符串/日期轉換爲日期,我當然會得到一個無效日期。所以我需要if-clause。 –