2017-01-29 62 views
0

我使用angularJS材質對話框來創建彈出窗口,我想輸入一些任務完成的時間。我想用自舉日期選擇器,我有分配功能到我的輸入,

​​

,但問題是,當這個功能被擊中時,該元素不存在。

這裏是我的控制器功能:

$scope.showCompleteConfirm = function (ev) { 
     //Timepicker 
     angular.element(".timepicker").timepicker({ 
      showInputs: false 
     }); 
     $mdDialog.show({ 
      controller: UserDetailController, 
      templateUrl: 'app/components/templates/CustomTimeDialog.html', 
      parent: angular.element(document.body), 
      targetEvent: ev, 
      clickOutsideToClose: true, 
      fullscreen: false // Only for -xs, -sm breakpoints. 
     }) 
     .then(function (answer) { 
      //success 
     }, function() { 
      //fail 
     }); 
    }; 

我能做些什麼,其工作是在我的HTML頁面創建標籤,並從那裏分配給它,因爲當這個模板會被調用,我的投入會存在,但我想知道是否有辦法讓我的功能在控制器中工作。

回答

1

我不完全確定,但我認爲$mdDialog有一個onComplete生命週期掛鉤,您可以使用。它在show()運行完成後被觸發。

$mdDialog.show({ 
      controller: UserDetailController, 
      templateUrl: 'app/components/templates/CustomTimeDialog.html', 
      parent: angular.element(document.body), 
      targetEvent: ev, 
      clickOutsideToClose: true, 
      fullscreen: false // Only for -xs, -sm breakpoints. 
      onComplete: function(){ 
        angular.element(".timepicker").timepicker({ 
        showInputs: false 
       }); 
      } 
      }) 
+0

我剛測試它,它的工作原理。我想知道爲什麼在他們的官方文件中並不是一個單詞。非常感謝。 – Martin

相關問題