如何检查richface弹出面板是否可见

时间:2016-07-08 14:11:17

标签: javascript html richfaces richfaces-modal

在以下代码中: code1 onClick函数opensUp一个RichFace弹出面板。我需要在关闭弹出窗口后执行onComplete功能。我怎么能延迟onComplete函数。有没有办法检查弹出窗口是否可见,如 code2 所示,以便延迟执行此操作。

代码1:
<a onclick ="showPopup('popup1')" oncomplete="" > Input </a>

代码2:
<a onclick ="showPopup('popup1'); while(isVisible('popup1')){ }"
oncomplete="" > Input </a>

1 个答案:

答案 0 :(得分:0)

只需使用onhide中的rich:popupPanel属性即可。它的描述是:弹出窗口消失后执行的客户端代码

<h:commandButton value="Call the popup">
    <rich:componentControl target="popup" operation="show" />
</h:commandButton>

<rich:popupPanel id="popup" modal="true"
    onhide="alert('My popup is now hidden!')"
    onshow="alert('This popup just pop out!');">
    <!-- (... some body ...) -->
</rich:popupPanel>

如果您确实想要检查JavaScript是否隐藏或显示弹出窗口,请在JavaScript中使用RichFaces对象,找到弹出窗口并检查shown字段。一个例子:

if (RichFaces.$('MyPopupId').shown) {alert('Shown')} else {alert('Hidden')}

查看RichFaces VDL了解详情。