2013-12-19 6 views
1

У меня есть приложение Yii, использующее cgridview, которое использует ajax pagination. Обычная проблема для людей - при разбиении на страницы вы теряете привязку к jquery. Например, мои popovers перестают работать (между прочим).Bootstrap popover и partial render - jQuery .on()

У меня есть функция поповер как:

$('.myclass').popover({ 
    trigger: 'hover', 
    show: true, 
    html: true 
}); 

Как я могу переписать эту функцию с помощью JQuery .На() обработки событий? Или есть другое решение?

ответ

1

Вы можете использовать selector property of popover, чтобы превалировать их.

var popOverSettings = { 
    trigger: 'hover', 
    show: true, 
    html: true, 
    selector: '.myclass' 
} 

$('body').popover(popOverSettings); 

Demo

+0

PSL это выглядит хорошо и работает, за исключением того, что html больше не отображается правильно. Любые идеи по этому вопросу? – lilbiscuit

+0

У вас есть скрипка или что-то, чтобы воспроизвести проблему. Отображается ли popover? – PSL

+0

Да здесь: http://jsfiddle.net/y6VX8/ – lilbiscuit

0

Другим вариантом было бы создать обработчик ajaxComplete. Это работает для меня:

// Enable popovers for Ajax content 
$(document).ajaxComplete(function() { 
    $('[data-toggle="popover"]').popover({ trigger: 'hover', html: true }).click(function(evt) { 
     evt.preventDefault(); 
    }); 
});