Подсказка jquerytools заполнена ajax

Я пытаюсь загрузить некоторый контент во всплывающую подсказку jQueryTools, в зависимости от родительского элемента триггера. Теперь я застрял с этим:

 <div id="id-1">
      <div>
        <div>
          Bla <a class="trigger">trigger</a>
        </div>
        <div class="tooltip">empty</div>
      </div>
 </div>
 <div id="id-2">
      <div>
        <div>
          Bla <a class="trigger">trigger</a>
        </div>
        <div class="tooltip">empty</div>
      </div>
 </div>

примечание: по умолчанию плагин загружает расширенный HTML в DIV с классом «tooltip» после элемента триггера.

Теперь JS должен сообщить мне имя родительского идентификатора DIV и загрузить содержимое во всплывающую подсказку в зависимости от этого имени идентификатора.

jQuery(".tooltip").tooltip({
    onShow: function() {
        var foundId = jQuery(this).parent().parent().attr("id");
                    // generate a url from the result, e.g. exmpl.com/id-1.html
                    // put the url content in the tooltip container
    }
});

Я довольно хренов в JS - есть ли решение, чтобы решить эту проблему?


person cukabeka    schedule 15.06.2012    source источник
comment
Я немного не понимаю. Что именно вы пытаетесь загрузить в всплывающую подсказку?   -  person Thinking Sites    schedule 15.06.2012


Ответы (1)


Это должно работать:

jQuery(".tooltip").tooltip({
    onShow: function() {
        var foundId = jQuery(this).parent().parent().attr("id");
        $.get('/some-url/' + foundId, function(data){
          $(this).html(data);
        });
    }
});

Вам следует подумать о том, чтобы разместить график загрузки или что-то еще, чтобы пользователь знал, что данные извлекаются при наведении курсора. Это даст клиенту время обратиться к серверу, чтобы получить нужный контент.

person Jimmy Baker    schedule 15.06.2012
comment
Отличная идея. Используйте следующее для Bootstrap 3+: $(".tooltip").tooltip().on('shown.bs.tooltip', function() { // the above function; }); - person Tum; 07.03.2016