【发布时间】:2017-01-24 10:24:36
【问题描述】:
我有 primefaces 版本 6.0,我遇到了对话框未显示的问题。
这是按钮。
<p:commandButton id="newRequestButton"
class="btn btn-lg btn-primary"
value="New Request"
update=":newRequestForm:newRequestDialog"
oncomplete="PF('newRequest').show()" />
这就是对话框
<p:dialog header="Request Definitions" widgetVar="newRequest"
resizable="true" width="600" showEffect="explode"
hideEffect="explode" modal="true" height="300"
class="modal-dialog">
<h:form id='newRequestForm'>
<h:panelGrid id="newRequestDialog" columns="1" cellpadding="4"
class="modal-content">
</h:panelGrid>
</h:form>
</p:dialog>
可能是什么问题。我遵循了几个答案,例如 this 和 this 无济于事。
编辑:
相对于forms 和激活它们的commandButtons,dialogs 应该放在哪里?
【问题讨论】:
-
您在日志记录中调查了什么?浏览器控制台?您是否尝试过更新对话框内容然后显示它而不是更新对话框?
-
@Kukeltje 如您所见,我正在更新包含对话框内容的
h:panelGrid -
对不起,误读了... :-( 表单应该在对话框中,当它是模态的并且有一个“appendTo”的主体(参见 PF 文档。与 commandButton 相关的位置是不是很相关。没有理由这不应该起作用,除非由于 commandButton 根本不起作用而没有调用服务器,这可以通过用普通的 javascript 警报替换“show”来测试。
-
@Kukeltje 即使
appendTo没有任何反应,为什么“commandButtons”不起作用? -
我没有说你应该使用appendTo,我说使用它时,你需要表单在对话框中。为什么 commandButtons 不起作用,好吧.... stackoverflow.com/questions/2118656/…
标签: primefaces