XPages - Bootstrap popover

У меня есть значок, который при наведении курсора всплывает какая-то дополнительная информация во всплывающем окне начальной загрузки

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

Код значка:

<!--INFO BUTTON START-->
                    <xp:text escape="false" id="computedField4">
                        <xp:this.value><![CDATA[#{javascript:try{
    var text = @DbLookup(@DbName(), "LookupKeywordLists", "Info"+compositeData.fieldName, "Members");
    return "&nbsp;<i class='fa fa-info-circle' data-container='body' data-toggle='popover' data-trigger='hover' data-placement='right' data-content='"+text+"'></i>"
}catch(e){
    openLogBean.addError(e,this.getParent());
}

}]]></xp:this.value>
                        <xp:this.rendered><![CDATA[#{javascript:try{
    return compositeData.showInfoIcon;
}catch(e){
    openLogBean.addError(e,this.getParent());
}}]]></xp:this.rendered>
                    </xp:text>

                    <!--INFO BUTTON END-->

Блок скриптов на странице:

<xp:scriptBlock id="scriptBlock1">
            <xp:this.value><![CDATA[$(document).ready(function(){
    $('[data-toggle="popover"]').popover({
        trigger: 'hover',
        title: 'Information'
    });
});]]></xp:this.value>
        </xp:scriptBlock>

Блок сценария в настоящее время находится вне div, который "обновляет" частичное обновление, однако я попытался поместить его в div, что не решило проблему. Есть идеи? Спасибо

1 ответ

Решение

Вам нужно добавить всплывающее окно, когда происходит частичное обновление. Для этого вы используете Dojo, чтобы подписаться на событие partrefresh-complete.

Этот ответ может помочь вам: /questions/26030179/povtornaya-initsializatsiya-jquery-s-obnovleniyami-dom-xpages-dlya-chastichnogo-obnovleniya/26030186#26030186.

Другие вопросы по тегам