点击时不要隐藏OverlayPanel

时间:2012-09-17 11:17:12

标签: jquery jsf primefaces

即使用户点击了工具提示之外的区域,我也希望PrimeFaces Overlay Panel保持可见状态。关闭工具提示的唯一方法是关闭按钮。

怎么做?

2 个答案:

答案 0 :(得分:8)

如果使用Primefaces 4-SNAPSHOT,则会有一个名为dismissable的属性。当您将其设置为false时,只能通过再次单击该按钮来关闭叠加层。

答案 1 :(得分:4)

我不是jquery / javascript专家,可能会有更优雅的解决方案。

<p:commandButton id="chartBtn" value="Basic" type="button" /> 
<p:overlayPanel id="chartPanel" widgetVar="chartPanelWidget" for="chartBtn" hideEffect="fade"
                                    onShow="$(document.body).unbind('mousedown.ui-overlay')">  
   <p:commandButton value="close" onclick="chartPanelWidhget.hide();return false;"/>
</p:overlayPanel>