0

私はブートストラップツールチップを使用してSVGパスに情報を追加しています。私はツールチップのタイトルへのアンカーリンクを追加しました。アンカーをクリックして何かを行うまではOKです。それはアンカーのように振る舞うものではなく、いかなる出来事も起こさない。ブートストラップのアンカーリンクツールチップのタイトルはクリック時のアンカーのようには動作しません

<g id="B2" class="blockgroup"> 
    <path id="B2_Block" class="block" d="M195.4,128.9c-28,18.2-51.9,42.2-70.1,70.2l33.3,19.3c14.8-22.6,34-42,56.5-57L195.4,128.9z"/> 
    <text id="B2_Text" transform="matrix(1 0 0 1 166.0186 177.8625)" class="text">B2</text> 
</g> 

$('.blockgroup').tooltip({ 
      html: true, 
      animation: true, 
      container:'body', 
      trigger: 'click', 
      title: function(){ 
       return '<div class="tooltip-box">' + 
          '<span>Block</span>' + 
          '<h3>' + this.id + '</h3>' + 
          '<a href="#" class="view-seats" data-block-id="' + this.id + '">View Seats</a>' + 
         '</div>'; 
      } 

     }); 


$('.view-seats').on('click', function(e){ 
    e.preventDefault(); 
    console.log('clicked'); 
}); 
+0

可能な複製(http://stackoverflow.com/questions/203198/event-binding-on-dynamically-created-elements) –

答えて

2

あなたはクリックハンドラを初期化すると.view-seats要素はまだDOMに追加されていない。

これはコードです。この要素は、tooltpが表示された後にDOMに追加されます。これは動作するはずです:[?イベントが動的に作成された要素を上の結合]

$(document).on('click', '.view-seats', function(e){ 
    e.preventDefault(); 
    console.log('clicked'); 
}) 
+0

うん!それは助けました。ありがとう – Afshin

関連する問題