我有一个h:form
,其中包含p:defaultCommand
,它将其范围定义为该表单。但是,我也有一个p:dialog
,我想要一个不同的默认命令。我可以在对话框中放入另一个p:defaultCommand
,并将其范围设置为对话框,但表单中的默认命令优先于它。我查看了生成的HTML,对话框只是表单中的一个元素。有没有办法让这两个元素使用不同的默认命令?
答案 0 :(得分:5)
存在设计问题。你应该在自己的<h:form>
中添加不同的形式。而且,每个对话框应始终有自己的<h:form>
。
这将立即解决每种形式的不同默认命令的这个特殊问题。
答案 1 :(得分:0)
我在primefaces对话框中遇到了类似的问题:
我的对话框在表单之外,但在运行时它仍然在表单中添加。我认为这与我使用的<ui:include>
标签有关。
为了确保将对话框添加到表单之外,我在对话框标记上使用了以下内容:
appendTo="@(body)"
这会将对话框附加为body标记的子对象,确保它不是表单的子对象。