2014-01-16 15 views
46

モーダルを提示するために角度ブートストラップを使用しています。しかし、私の要求は、モーダルの外側をクリックするとき、またはエスケープキーが押されたときにポップアップの解雇を防ぐことです。angular js:外部をクリックするかエスケープするときにブートストラップモードが消えないようにしますか?

私は角ブートストラップサイトのチュートリアルに続く:http://angular-ui.github.io/bootstrap/

enter image description here

答えて

96

用途:

backdrop: 'static' 

backdrop - 背景のコントロールの存在を。許容値:true (デフォルト)、false(背景なし)、 'static' - 背景がありますが、 モーダルウィンドウの外側をクリックするとモーダルウィンドウが閉じません。例えば

$modal.open({ 
     templateUrl: 'myModalContent.html', 
     controller: ModalInstanceCtrl, 
     backdrop: 'static' 
    }) 
+0

疑問の余地無く、以下の回答が確認されています –

5

背景 - 背景のコントロールの存在を許可された値:true(デフォルト)、偽(無背景)、 '静的' - 背景には存在するが、モーダルモーダルウィンドウの外側をクリックしてもウィンドウは閉じられません。 - http://angular-ui.github.io/bootstrap/#/modal

の試みを:

<div ng-controller="ModalDemoCtrl" data-backdrop="static"> 
... 
</div> 
32

あなたのモーダルオプションにbackdrop: statickeyboard: falseの両方を追加します。最初のものはバックグラウンドのクリックを無効にし、もう1つはエスケープキーを無効にします。

backdrop: 'static' - 背景が存在しますが、モーダルウィンドウの外側をクリックしてもモーダルウィンドウは閉じられません。

keyboard - ダイアログがESCキーを押して閉じることができるかどうかを示します。デフォルトはtrueです。

例:詳細は

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

See the docs

+5

これは、OPの概要の両方の要件を解決するため、これが受け入れられる回答になるはずです。 – boredlamer

関連する問題