2016-03-25 14 views
2

タイトルがHTMLタグであるツールチップを(Ajax Call経由で)ロードしようとしています。 include_once関数でロードされた最初のページの読み込みでは、ツールチップはうまく動作しますが、Ajax呼び出しでページロードをトリガーしたときには表示されません。ここに私のファイルは、以下のとおりです。Bootstrap TooltipをAjax経由で読み込めません

loadTable.php

<?php 
     $content = "<a data-toggle='tooltip' data-html='true' title='<strong>ok</strong>' 
<span class='glyphicon glyphicon-align-left'></span></a>"; 

     echo $content; 
    ?> 

mypage.php

<button type="button" class="btn btn-primary" onclick="loadPage()">Load</button> 
<div id="tableData"> 
    <?php include_once('loadTable.php');?> 
</div> 

myjavascriptfile.js

function loadPage(){ 
    $.ajax({ 
     type: "POST", 
     url: "loadTable.php", 
     data:{ 
      cache: false, 
      success: function(result){ 
       $("#tableData").html(result); 
      } 
     }); 
    } 
} 

注:もちろん、理解と単純化のために、極端な例を単純化しました。

ありがとうございます。

+0

ロードされていないとはどういう意味ですか?これまでと同じHTMLを読み込んでいるようです。 –

+0

はい、それは同じです。しかし、Ajaxを介して、ツールチップはグリフコンをonmouseoverトリガしません。 – codeless

+2

動的にロードされた要素のツールヒントを再初期化する必要があります – DelightedD0D

答えて

1

DelightedD0Dさんにありがとうございました。解決方法は、Ajaxコールの後にツールチップを再初期化することです。

私の場合、私はこの行を追加しました: $( '[data-toggle = "tooltip"]'); tooltip();

function loadPage(){ 
    $.ajax({ 
     type: "POST", 
     url: "loadTable.php", 
     data:{ 
      cache: false, 
      success: function(result){ 
       $("#tableData").html(result); 
       $('[data-toggle="tooltip"]').tooltip(); 
      } 
     }); 
    } 
} 

同じ問題を抱えている他の人に役立つことを願っています。

関連する問題