0

Я использую всплывающую подсказку для загрузки информации о SVG-пути. Я добавил привязку к заголовку всплывающей подсказки, и все нормально, пока я не нажму на якорь, чтобы что-то сделать. Он не действует как якорь и не вызывает никаких событий.ссылка привязки в заголовке подсказки bootstrap не действует как якорь при нажатии

Это код:

<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 еще. Этот элемент добавляется в DOM после отображения tooltp. Это должно работать: [? Связывания событий на динамически создаваемые элементы]

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

Да! это помогло. благодаря – Afshin