XPages - Bootstrap 弹出框
XPages - Bootstrap popover
我有一个图标,当你悬停它时,它会在 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 " <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 之外,部分刷新 "refreshes" 但是我尝试将其放在 div 之内,这并没有解决问题。有任何想法吗?谢谢
您需要在发生局部刷新时添加弹窗。为此,您使用 Dojo 订阅 partialrefresh-complete 事件。
这个答案可以帮助到您:。
我有一个图标,当你悬停它时,它会在 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 " <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 之外,部分刷新 "refreshes" 但是我尝试将其放在 div 之内,这并没有解决问题。有任何想法吗?谢谢
您需要在发生局部刷新时添加弹窗。为此,您使用 Dojo 订阅 partialrefresh-complete 事件。
这个答案可以帮助到您: