Прежде всего, если вы хотите использовать HTML внутри контента, вам нужно установить для параметра HTML значение true:
$('.danger').popover({ html : true});
Тогда у вас есть два варианта, чтобы установить контент для Popover
- Используйте атрибут data-content. Это опция по умолчанию.
- Используйте пользовательскую функцию JS, которая возвращает содержимое HTML.
Использование data-content : вам нужно экранировать HTML-контент, что-то вроде этого:
<a class='danger' data-placement='above'
data-content="<div>This is your div content</div>"
title="Title" href='#'>Click</a>
Вы можете либо выйти из HTML-кода вручную, либо использовать функцию. Я не знаю о PHP, но в Rails мы используем * html_safe *.
Использование функции JS : если вы сделаете это, у вас есть несколько вариантов. Самое простое, что я думаю, - это спрятать содержимое div в любом месте, а затем написать функцию для передачи его содержимого в popover. Что-то вроде этого:
$(document).ready(function(){
$('.danger').popover({
html : true,
content: function() {
return $('#popover_content_wrapper').html();
}
});
});
И тогда ваш HTML выглядит так:
<a class='danger' data-placement='above' title="Popover Title" href='#'>Click</a>
<div id="popover_content_wrapper" style="display: none">
<div>This is your div content</div>
</div>
Надеюсь, поможет!
PS: у меня были некоторые проблемы, когда я использовал popover и не устанавливал атрибут title ... так что не забывайте всегда устанавливать заголовок.