540

Twitter Bootstrap モーダルをウィザード ウィンドウとして使用していますが、ユーザーがモーダルの外側をクリックしたり、エスケープを押したりして閉じないようにしたいと考えています。代わりに、ユーザーが終了ボタンを押したときに閉じるようにします。どうすればこのシナリオを達成できますか?

4

16 に答える 16

83

ブートストラップ モデルでも Direct を使用できます。

<div class="modal fade" id="myModal" data-keyboard="false" data-backdrop="static">
于 2018-04-12T10:11:16.267 に答える
43

そのモーダルに属性をdata-backdrop="static"追加するだけです。data-keyboard="false"

例えば。

<a data-controls-modal="your_div_id" data-backdrop="static" data-keyboard="false" href="#">
于 2016-07-14T12:37:49.150 に答える
27

以下のコードを使用できます

$.fn.modal.prototype.constructor.Constructor.DEFAULTS.backdrop = 'static';

デフォルトの動作を変更します。

于 2015-08-19T21:06:23.823 に答える
12
<button class="btn btn-primary btn-lg" data-backdrop="static" data-keyboard="false" data-target="#myModal" data-toggle="modal">
于 2016-10-26T06:14:18.617 に答える
6

外側のクリックを無効にする必要があるが、エスケープを押すことを有効にする必要がある場合

$('#myModal').modal({
    Background: 'static', // これにより、クリック外イベントが無効になります
    keyboard: true // これはキーボード イベント用です
}))
于 2016-06-04T04:56:07.880 に答える
6

次のスクリプトは私のために働いた:

// prevent event when the modal is about to hide
$('#myModal').on('hide.bs.modal', function (e) {
    e.preventDefault();
    e.stopPropagation();
    return false;
});
于 2017-07-12T05:03:55.857 に答える