我使用以下方法在我的网页上实现了一个弹出框
<p:dialog header="Value" widgetVar="confirmationCbxTxt" ..>
现在,我想检查当单击页面上的按钮时是否打开此弹出框。 我的按钮的代码是
<p:commandButton value="#{label.close}" ajax="true" id="Close2" onclick="focuspopup();" />
使用onclick函数“onclick =“focuspopup();”我想检查我的弹出框是否在屏幕上打开。有人可以建议这种方法吗?我正在考虑在我的focuspopup()中使用jquery测试打开的弹出窗口。
最佳答案
PrimeFaces.widget.Dialog
的客户端 API 包含三种方法,根据 PrimeFaces 5.2 User Guide (第 184 页):
- show() 显示对话框。
- hide() 关闭对话框。
- isVisible() 以 bool 值形式返回可见性。
使用最后一项即可满足要求。例如,将其添加到您的 focuspopup()
函数中:
var open = PF('confirmationCbxTxt').isVisible();
<小时/>
注意:对于较旧的 PrimeFaces 版本(5.1 及更低版本),isVisible() 不存在,因此您需要将其替换为
var open = PF('confirmationCbxTxt').jq.is(':visible');
关于javascript - 如何检查 p 是否为 :dialog is open?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31451234/