2011-09-18 70 views
0

在提到我已张贴 Primefaces Dialog box - show it conditionally. javascript code not working有条件地显示Primefaces对话框

问题的查询是,当

<p:outputPanel id="dialogPanel" 
      rendered="#{not reqSearchHandler.accStatusFlag}"> 

为呈现不呈现原来是假的,然后当我点击在commandbutton上,它保持时钟,我不能去下一页,似乎ajax请求永远不会完成,因为oncomplete =“dlg3.show()”需要页面中的对话框。是假的,它从来没有发现dlg3。

<p:commandLink id="addRequest" immediate="true" value="addreq" 
       oncomplete="dlg3.show()" update="dialogPanel"> 
       <f:setPropertyActionListener 
        value="#{searchHandler.selectedAccIns}" 
        target="#{reqSearchHandler.checkAccStatus}" /> 
      </p:commandLink> 

有人可以请帮助我如何避免打开对话框时,特定的条件是错误的。任何想法?

回答

0

dpag3是否在dialogPanel中?你为什么不发布完整的代码?
如果是这样,那么就在调用dlg3.show())之前,将呈现条件更改为true(例如,通过添加动作侦听器)或仅将对话框移动到面板之外。

+0

要求是我有一个状态标志,如果它是TRUE,那么我不必显示对话框,但如果它是假的,那么我必须显示这个对话框 - 以及我必须做的所有事情我点击commandbutton.On删除输出面板,对话框总是显示出来。任何想法? – C4CodeE4Exe

+0

就像我说的你应该设置状态标志为true,更新你的dialogPanel,然后调用dlg3.show() – jFrenetic

+1

使用对话框的可见选项来自动显示。 –