web-dev-qa-db-ja.com

モーダルウィンドウを閉じた後にイベントを追加する方法は?

コードモーダルがあります。

    <-- Button to trigger modal -->
<div id="result"></div>
<a href="#myModal" role="button" class="btn" data-toggle="modal">Launch demo modal</a>

<-- Modal -->
<div class="modal" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-header">
    <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
    <h3 id="myModalLabel">Modal header</h3>
  </div>
  <div class="modal-body">
    <p>One fine body…</p>
  </div>
  <div class="modal-footer">
    <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
    <button class="btn btn-primary">Save changes</button>
  </div>
</div>

そして、私はコードを持っているときに、モアウィンドウを閉じた後でなければなりません:

$('#result').html('yes,result');

モーダルウィンドウを閉じる(閉じるまたは非表示にする)ときに2番目のコードを実行する方法を教えてください。

21
Leo Loki

答えが見つかりました。次に正しい答えを除いてすべてに感謝します:

$("#myModal").on("hidden", function () {
  $('#result').html('yes,result');
});

イベントはこちら http://bootstrap-ru.com/javascript.php#modals

[〜#〜] upd [〜#〜]

Bootstrap 3.xは hidden.bs.modal を使用する必要があります:

$("#myModal").on("hidden.bs.modal", function () {
  $('#result').html('yes,result');
});
26
Leo Loki

Bootstrapのバージョン3.xを使用している場合、これを行う正しい方法は次のとおりです。

$('#myModal').on('hidden.bs.modal', function (e) {
  // do something...
})

詳細については、イベントセクションまでスクロールします。

http://getbootstrap.com/javascript/#modals-usage

これは、バージョン4がリリースされるたびに変更されないように見えます( http://v4-alpha.getbootstrap.com/components/modal/#events )。関連情報を投稿してください。

53
MattD

特に動的なコンテンツがある場合、役に立つ答えはほとんどありません。

$('#dialogueForm').live("dialogclose", function(){
   //your code to run on dialog close
});

または、モーダルを開くときにコールバックを使用します。

$( "#dialogueForm" ).dialog({
              autoOpen: false,
              height: "auto",
              width: "auto",
              modal: true,
                my: "center",
                at: "center",
                of: window,
              close : function(){
                  // functionality goes here
              }  
              });
2
PodTech.io
$('.close').click(function() {
  //Code to be executed when close is clicked
  $('#result').html('yes,result');
});
0
Huy