2017-01-26 98 views
0

我一直在寻找的论坛这个问题和解决方案为我工作不到风度,所以......UI引导模式不关闭。 AngularJS

关闭模式的唯一方法是点击模式的键盘上按ESC键之外,或..

这里是我的模态控制器:

app.controller('ModalCtrl', function($scope, $uibModal) { 

     $scope.items = [{}] 


     $scope.showModal = function(selectedItem) { 

      var uibModalInstance = $uibModal.open({ 
      windowTopClass: 'modal fade ql-modal', 
      templateUrl : 'modalContent.html', 
      controller : function($scope, $uibModalInstance, $uibModal, item){ 
       $scope.item = item; 

      }, 
      resolve: { 
       item: function(){ 
        return selectedItem; 
       } 
      } // empty storage 
      }); 

      uibModalInstance.result.then(function(selectedItem){ 
      $scope.selected = selectedItem; 
      $scope.cancel = function(){ 
       $uibModalInstance.dismiss('cancel'); 
      }; 
      }); 
     };     
}); 

这里是我的HTML模式:

<script type="text/ng-template" id="modalContent.html"> 
     <!-- Modal --> 
       <!--Content--> 
       <div class="modal-content"> 
        <!--Header--> 
        <div class="modal-header"> 
         <button type="button" class="close" data-dismiss="MyModal" aria-label="Close" ng-click="cancel()"> 
          <span aria-hidden="true">&times;</span> 
         </button> 

        ................................... 

         <div class="modal-footer"> 
         <button type="button" class="btn btn-primary" ng-click="cancel()">Close</button> 
        </div> 
       </div> 
       <!--/.Content--> 
     <!--/Modal--> 
    </script> 

我跟着每一个答案,小提琴,plnkr,但我不能让它工作。

回答

1

只需动cancel()方法从uibModalInstance.result.then到 您的模态控制器:

var uibModalInstance = $uibModal.open({ 
     windowTopClass: 'modal fade ql-modal', 
     templateUrl : 'modalContent.html', 
     controller : function($scope, $uibModalInstance, $uibModal, item){ 
      $scope.item = item; 
      $scope.cancel = function(){ 
       $uibModalInstance.dismiss('cancel'); 
      }; 
     }, 
     resolve: { 
      item: function(){ 
       return selectedItem; 
      } 
     } // empty storage 
     }); 
+0

感谢。现在工作。 –