angularjs $modal close modal

87,432

Solution 1

To close a $modal that you have opened you can follow these steps.

1) Inject $modalInstance into the controller that you specified when you created the modal. In your case you called it ModalInstanceCtrl.

2) Have a function in your ModalInstanceCtrl that calls .close() on $modalInstance.

your ModalInstanceCtrl should look something like this

angular.module('myCoolApp')
  .controller('ModalInstanceCtrl', function ($scope, $modalInstance) {

    $scope.closeModal = function(){
       $modalInstance.close();
    }

});

Solution 2

$scope.myData='all data can be';
$scope.myModalInstance = $modal.open({
    templateUrl: 'app/myOpen.html',
    controller: 'myOpenController',
    size: 'lg', //modal open size large
    backdrop: 'static',
    keyboard: false,
    resolve: {
        myData: function () {
            return $scope.myData;
            }
        }
    });
$scope.modalClose = function (){
   $scope.myModalInstance.close();
}

Share:
87,432
John
Author by

John

Sofware developer. Love to learn new things.

Updated on April 10, 2020

Comments

  • John
    John about 4 years

    Im trying to make an angularjs Modal service. I have an controller that opens some modal, in that modal i call original controller functions or access some variables, this part i can make it already. I just cant close modal without clicking cancel or ok buttons, o want to make some operations in the modal, call some werbservices and the close modal manually. Can anyone help me?

    I made an working plunker here: plunker

    var modalInstance = $modal.open({
                  templateUrl: 'myModalContent2.html',
                  controller: ModalInstanceCtrl,
                  size: size,
                  scope: $scope
    
                });