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

Javascript 如何检查p:对话框是否打开?,javascript,jquery,html,primefaces,Javascript,Jquery,Html,Primefaces,我已经在我的网页上使用实现了一个弹出框 <p:dialog header="Value" widgetVar="confirmationCbxTxt" ..> 现在,我想检查单击页面上的按钮时,此弹出框是否打开。 我的按钮的代码是 <p:commandButton value="#{label.close}" ajax="true" id="Close2" onclick="focuspopup();" /> 使用onclick函数“onclick=”focu

我已经在我的网页上使用实现了一个弹出框

<p:dialog header="Value" widgetVar="confirmationCbxTxt" ..>

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

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


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

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

  • show()显示对话框
  • 隐藏()关闭对话框
  • isVisible()将可见性作为布尔值返回
使用最后一个来满足要求。例如,在
focuspoup()
函数中添加:

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

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

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

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

  • show()显示对话框
  • 隐藏()关闭对话框
  • isVisible()将可见性作为布尔值返回
使用最后一个来满足要求。例如,在
focuspoup()
函数中添加:

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

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

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

您好,Mathieu,PF格式(我不适用。您能推荐其他格式吗?
confirmationCBXT.isVisible()
如果使用旧的pf版本。这也可以在互联网上阅读。如果您使用pf,请关注博客,不时浏览论坛,使用文档等您正在使用的PrimeFaces版本?此外,由于它应该如上所述工作,请从您的浏览器调试器控制台报告任何JS错误W!为什么您被卡住了对于这个旧版本(2011!),如果可以的话,您应该升级。无论如何,
isVisible()
不是PrimeFaces 2.2中客户端API的一部分。您应该使用jQuery。那么
var open=confirmationCbxTxt.jq.hasClass('ui-overlay-visible');
?如果对您有效,我将更新我的答案。嗨,Mathieu,PF格式(对我不起作用。你能建议其他格式吗?)是的,
confirmationCbxTxt.isVisible()
如果使用旧的pf版本。这也可以在互联网上阅读。如果您使用pf,请关注博客,不时浏览论坛,使用文档等您正在使用的PrimeFaces版本?此外,由于它应该如上所述工作,请从您的浏览器调试器控制台报告任何JS错误W!为什么您被卡住了对于这个旧版本(2011!),如果可以的话,您应该升级。无论如何,
isVisible()
不是PrimeFaces 2.2中客户端API的一部分。您应该使用jQuery。关于
var open=confirmationCbxTxt.jq.hasClass('ui-overlay-visible');
?如果对您有效,我将更新我的答案。