0

ブートストラップ モーダルの問題に直面しています。私がやろうとしているのは、AJAX を使用してブートストラップ モーダル内に HTML コンテンツを挿入することですが、モーダルをロードしても何も表示されず、モーダルを検査すると AJAX から HTML コンテンツが表示されます。これは、モーダルを初期化するのに必要な時間が、AJAX が html コンテンツをロードするのにかかる時間よりも速いためです。

モーダルと AJAX を同時にロードする方法はありますか、または ajax からの HTML コンテンツをモーダル ボディ内に表示する別の方法があるかどうか。

モーダル:

<div class="modal hide fade" id="MobileAppPromoDiv">
<div class="modal-body">
</div>
<div class="modal-footer">
    <a href="#" class="btn btn-success" data-dismiss="modal">Ok</a>
</div>

アヤックス:

$.get("URL",{action:21},function(htmlContent){
     $('#MobileAppPromoDiv').find('.modal-body').append(htmlContent);
                $('#MobileAppPromoDiv').modal('toggle');
});
4

2 に答える 2

1

AJAX 呼び出し中にモーダルを初期化する方法を見つけたので、両方が同時に初期化され、正しく表示されます。

$.get("URL",{action:21},function(htmlContent){
 $('#MobileAppPromoDiv').find('.modal-body').append(htmlContent);
 $('#MobileAppPromoDiv').modal('show').on('shown', initHtml);
});

そして、initHTML 関数で、ex に必要な html ページの初期化を配置しました。 $(document).ready(function() { . . . }そのため、モーダル初期化時にhtmlページの準備が整います

これが誰かの役に立てば幸いです

于 2013-07-26T06:57:37.597 に答える
0

AJAX を使用して HTML コンテンツをロードするために、setTimeout() メソッドを使用して、madel の初期化をしばらく遅らせることができます。

于 2013-07-25T04:20:18.077 に答える