Подсказка начальной загрузки Twitter не работает в шаблоне js
Я использую функцию всплывающей подсказки Twitter, которая прекрасно работает в текстах заголовков gsp. Теперь я хочу добавить всплывающую подсказку начальной загрузки на id="tooltipcheck". Если я напишу title="{{data}}", то я смогу увидеть всплывающую подсказку, но подсказка начальной загрузки здесь не работает. Есть ли проблема с шаблоном JS или есть что-то еще?
<script id="myTemplate" type="text/x-handlebars-template">
<div class="row">
<div class="span4" id="tooltipcheck" data-placement="bottom" data-toggle="tooltip" data-original-title="{{data}}">{{data}} </div>
</div>
Я называю подсказку вот так.
<script>
jQuery(function ($) {
$("#tooltipcheck").tooltip('show');
});
2 ответа
Вы не можете установить идентификатор элемента в шаблоне, потому что идентификаторы должны быть уникальными. Попробуйте изменить tooltipcheck
вместо класса:
<div class="span4 tooltipcheck" data-placement="bottom" data-toggle="tooltip" data-original-title="{{data}}">{{data}} </div>
И затем инициализируйте ваши подсказки, используя класс:
$(".tooltipcheck").tooltip('show');
Всплывающие подсказки нужно будет инициализировать после того, как руль проанализирует шаблон и сгенерирует вашу разметку, иначе всплывающие подсказки не будут иметь элементов для привязки.
Так как вы работаете с динамическими элементами, после добавления элементов в dom вам нужно инициализировать всплывающую подсказку для новых элементов
Пример:
var html = // html from template
var el = $(html).appendTo('somele');
el.find('<tooltip-element>').tooltip('show');
Кроме того, поскольку вы используете шаблон, я предполагаю, что на странице будет несколько экземпляров шаблона, поэтому не используйте id
внутри шаблона, так как в DOM идентификатор должен присутствовать только один раз