2016-07-09 24 views
0

閉じる/隠す時にブートストラップモーダルを破棄したいときと、新しいコンテンツを開くときに毎回新しいコンテンツを開くとき.netでこれを実装しようとしています。重複としてマークする前にお読みください。ブートストラップモードを破棄します

<div id="modal" class="modal fade"> 
     <div class="modal-dialog" role="dialog"> 
      <div class="modal-content" data-backdrop="static"> 
       <div id="modalContent"> 
       </div> 
      </div> 
     </div> 
    </div> 

としての私のマスターページで

、 モーダルのためのマークアップの私のaspxページでは

$("a[data-modal]").on("click", function (ev) { 
       BlockPage("Loading Dialog"); 
       $("#modalContent").load(this.href, function() { 
        $("#modal").modal({ 
         cache:false, 
         backdrop: 'static', 
         keyboard: false 
        }, "show"); 
       }); 
       ev.preventDefault(); 
       return false; 
      });   

としてモーダルを開くためのコード、私は以下のようにモーダルを開くためのコードを次のようしています。

<a runat="server" id="lnkAssignInformed" data-modal="" class="btn btn-info hidden-print assignInformed">Assign Informed</a>&nbsp; 

表示されているイベントと非表示のイベントについては、次のコードがあります。私はモーダルを破壊するために隠されたイベントのために私はこのポストの答えからの答えに従った。 Stackoverflow Post

$("#modal").on('show.bs.modal', function (e) { 
       $(this).find('.modal-body').css({ 
        width: 'auto', 
        height: 'auto', 
        'max-height':'100%' 
       });    
      }); 

      $('body').on('hidden.bs.modal', '#modal', function() {         
       $('#modal').removeData('bs.modal'); 
      }); 

問題でも、私はまだそのを初めて開いたときに表示されたモーダル内のデータを参照してくださいモーダルを再度開いたときに、隠されたイベントにモーダルを破壊しようとした後です。

次のコードも試しましたが、違いはありませんでした。

$("#modal").on('hide.bs.modal', function() { 
       $('#modal').data('bs.modal', null); 
      }); 

私は現在IE-11でこれを試しています。他のブラウザではテストしていません。

アンカータグをクリックするたびにトリガーをかける方法はありますか?どんな助けもありがとう。

答えて

0

私はそれを自分自身で解決することができました。問題は結果をキャッシュするJquery.load()にありました。私は次のコードを使ってキャッシュを破壊することができました。この後、ダイアログには毎回新しいコンテンツが表示されます。

$("a[data-modal]").on("click", function (ev) { 
      BlockPage("Loading Dialog"); 
      $("#modalContent").load(this.href,'f' + (Math.random()*1000000), function() { 
       $("#modal").modal({ 
        cache:false, 
        backdrop: 'static', 
        keyboard: false 
       }, "show"); 
      }); 
      ev.preventDefault(); 
      return false; 
     });   
関連する問題