web-dev-qa-db-ja.com

Bootstrap=モーダルonloadイベント

bootstrapモーダルにはonloadイベントがありますか?モーダルが開かれたときにhttp GETリクエストを呼び出して、モーダルに残りのAPIからのデータを入力します。モーダルにフォームがあり、フォームのonloadイベントでGET関数を呼び出しましたが、機能しません。

<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
        <h4 class="modal-title" id="myModalLabel">Agent details:</h4>
      </div>
      <div class="modal-body">

<form onload="getData()" style= "font-size: 16pt">
20
bookthief

ドキュメント ごとに、ショーまたはショーイベントを聞くことができます。

ドキュメントから:

show.bs.modal =>このイベントは、show instanceメソッドが呼び出されるとすぐに発生します。

shown.bs.modal =>このイベントは、モーダルがユーザーに表示されたときに発生します(CSSトランジションが完了するまで待機します)。

$('#myModal').on('show.bs.modal', function () {
  // do something…
})
45
Dmase05

これを行うための最良の方法であることがわかったのは、モーダルを呼び出すHTML要素にonclick属性を追加することです。

<button type="button" onclick="PopulateAddModal()" class="btn btn-sm btn-primary" data-toggle="modal" data-target="#AddModal">Add</button>

それからあなたのjavascriptで..

    function PopulateAddModal() {
      //do stuff here...
      }

これにより、モーダルが呼び出されるとすぐにコードが実行されます。そうしないと、モーダルが完全に「フェードイン」アニメーションになるまで、javascriptコードは実行されません。

5
lbecker34