我有这样的片段:PrimeFaces内p嵌套形式:与appendTo =“@(身体)对话框
<h:form id="form">
<!-- other content -->
<p:panel id="panel" header="test">
<p:inputText id="input1" value="#{viewScope.prop1}" required="true" />
<p:commandButton id="button1" process="@form" update="@form @widgetVar(dialog)"
oncomplete="PF('dialog').show()" value="ok" />
</p:panel>
<!-- other content -->
</h:form>
<p:dialog id="dialog" header="dialog" widgetVar="dialog" modal="true">
<h:form id="form2">
<p:inputText id="input2" value="#{viewScope.prop1}" required="true" />
<p:commandButton id="button2" process="@form" update="@form" value="ok" />
</h:form>
</p:dialog>
和所有工作正常
我想什么来实现的就是这个。 :
<h:form id="form">
<!-- other content -->
<!-- fragment start -->
<!-- this fragment will be on its own file and included via ui:include (or inside composite component) -->
<p:panel id="panel" header="test">
<p:inputText id="input1" value="#{viewScope.prop1}" required="true" />
<p:commandButton id="button1" process="@form" update="@form @widgetVar(dialog)"
oncomplete="PF('dialog').show()" value="ok" />
</p:panel>
<p:dialog id="dialog" header="dialog" widgetVar="dialog" modal="true" appendTo="@(body)">
<h:form id="form2">
<p:inputText id="input2" value="#{viewScope.prop1}" required="true" />
<p:commandButton id="button2" process="@form" update="@form" value="ok" />
</h:form>
</p:dialog>
<!-- fragment end -->
<!-- other content -->
</h:form>
,但我没有成功尝试的process
和update
一些组合为button1
产生过程什么... input1
甚至重置...
那么,如何建立一个p:dialog
,可以在一个片段或复合材料组件内运输,并从外部排除form
?
注意,使用:
<h:form id="form">
<!-- other content -->
<ui:include src="panel.xhtml" />
<!-- other content -->
</h:form>
<ui:include src="dialog.xhtml" />
不是可接受的解决方案。
我在JSF 2.2.8(钻嘴鱼科)和PF 5.1
我想不接受开始包含并结束? :)对我来说,无论如何你都会得到嵌套的表格 –
2014-10-28 18:39:14
不,不允许:)但是我不想避免嵌套表格,我试图让它们在appendTo属性的帮助下工作。根据PF对话文档,这应该是可能的。 – 2014-10-29 01:34:58
但是不是嵌套形式是什么给你带来麻烦?我总是期望它会通过appendTo在输出的html中不起作用。在primefaces论坛上有一些关于它的讨论,也许你可以在那里找到一些东西 – 2014-10-29 05:40:29