如何检查p:对话框是否打开?

时间:2015-07-16 10:07:07

标签: javascript jquery html primefaces

我已经使用

在我的网页上实现了一个弹出框
<p:dialog header="Value" widgetVar="confirmationCbxTxt" ..>

现在,我想检查点击我页面上的按钮时是否打开此弹出框。 我的Button的代码是

<p:commandButton value="#{label.close}" ajax="true" id="Close2" onclick="focuspopup();" />

使用onclick函数“onclick =”focuspopup();“我想检查我的弹出框是否在屏幕上打开。任何人都可以建议这种方法。我正在考虑在我的focuspopup()中使用jquery来测试打开弹出窗口。

1 个答案:

答案 0 :(得分:3)

PrimeFaces.widget.Dialog的客户端API包含三种方法,根据PrimeFaces 5.2 User Guide(第184页):

  • show()显示对话框。
  • 隐藏()关闭对话框。
  • isVisible()将可见性作为布尔值返回。

使用最后一个来满足要求。例如,在focuspopup()函数中添加它:

var open = PF('confirmationCbxTxt').isVisible();

注意:对于较旧的PrimeFaces版本(5.1及更低版本), isVisible()不存在,因此您需要将其替换为

var open = PF('confirmationCbxTxt').jq.is(':visible');