2016-05-29 86 views
0

嗨我想在關閉第一個模式後打開模式。但問題是,第二個似乎是打開的,但事實並非如此。我不明白這個問題。任何人都可以幫助我。使用Angular UI關閉第一個模式後無法打開模式

myController.js

 $scope.detailsPdt = function(pdt, size) 

       { 
        $scope.cancel(); 
        $scope.pdt = pdt; 

        $rootScope.modalInstance = $uibModal.open({ 
         animation : $scope.animationsEnabled, 
         templateUrl : 'partials/detailsProduct.html', 
         controller : 'ProductsController', 
         size : size, 
         scope : $scope, 
         resolve : {} 
        }); 
       } 

回答

0

你的情況的問題是,你的第一個模式仍然是開放的,而你試圖打開第二個

你將不得不關閉第一個,通在第一個到第二個的數據類似:

基本上第一個模式可以從任何你想要的(HTML或控制器)觸發,那麼你必須關閉第一個從myController1和modalInstance。 result.then()你需要調用第二個

$scope.openSecondModal = function(size, data){ 

    var modalInstance = $uibModal.open({ 
    templateUrl: 'templates/mytemplate2', 
    controller: 'myController2', 
    size: size, 
    resolve: { 
     data: function(){ 
      return data; 
     }, 

    }); 
    modalInstance.result.then(function(data2){ 


    }); 
}; 


$scope.openFirstModal = function(size){ 

    var modalInstance = $uibModal.open({ 
    templateUrl: 'templates/mytemplate1', 
    controller: 'myController1', 
    size: size, 
    resolve: { 

     } 
    }); 
    modalInstance.result.then(function(data){ 
     if(data){ 
      //calling the second modal 
      $scope.openSecondModal('lg', data); 
     } 
    }); 
}; 
+0

我試過$ scope.modalInstance.close(pdt)但它不工作。請原諒我對AngularJs仍然很陌​​生,而且我沒有太多得到你所說的。而我沒有得到你正在採取的功能 – zzooee

+0

檢查我的編輯,我希望這可以幫助 –

+0

感謝您的時間但是我應該做同樣的事情,如果2模態屬於相同的控制器 – zzooee

相關問題