68

Am using the angular bootstrap to present a modal. But my requirement is to prevent pop-up dismissal when clicking outside the modal, or when the escape key is pressed.

I followed the tutorial on the angular bootstrap site :http://angular-ui.github.io/bootstrap/

enter image description here

theDmi
  • 17,546
  • 6
  • 71
  • 138
Vinodh
  • 5,262
  • 4
  • 38
  • 68

3 Answers3

132

Use:

backdrop: 'static'

backdrop - controls presence of a backdrop. Allowed values: true (default), false (no backdrop), 'static' - backdrop is present but modal window is not closed when clicking outside of the modal window.

For example:

$modal.open({
      templateUrl: 'myModalContent.html',
      controller: ModalInstanceCtrl,
      backdrop: 'static'
    })
CD..
  • 72,281
  • 25
  • 154
  • 163
46

Add both backdrop: static and keyboard: false to your modal options. The first one disables the background click, the second one the escape key.

backdrop: 'static' - backdrop is present but modal window is not closed when clicking outside of the modal window.

keyboard - indicates whether the dialog should be closable by hitting the ESC key, defaults to true.

Example:

$modal.open({
  templateUrl: 'template.html',
  controller: TheController,
  backdrop: 'static',
  keyboard: false
})

See the docs for more information.

Community
  • 1
  • 1
theDmi
  • 17,546
  • 6
  • 71
  • 138
10

"backdrop - controls presence of a backdrop. Allowed values: true (default), false (no backdrop), 'static' - backdrop is present but modal window is not closed when clicking outside of the modal window." - in http://angular-ui.github.io/bootstrap/#/modal

Try:

<div ng-controller="ModalDemoCtrl" data-backdrop="static">
...
</div>
Th3Alchemist
  • 1,161
  • 2
  • 13
  • 25