究竟是什么process,并update在PrimeFaces p:commandXxx组件和execute和render的f:ajax标签?
哪个在验证时有效?什么是update属性做,而不是更新的值从后端组件?不要process属性绑定值模型?究竟是什么@this,@parent,@all并@form在这两个属性?
下面的例子工作正常,但我对基本概念有点困惑.
<p:commandButton process="@parent"
update="@form"
action="#{bean.submit}"
value="Submit" />
Run Code Online (Sandbox Code Playgroud) 我在模态对话框中有一个表单,在关闭(实际上隐藏)一个表单后,我想重置用户可能已更改的所有输入。我想如下:
<p:dialog widgetVar="myDialog">
<h:form id="formId">
<!-- ... -->
<p:commandButton value="Cancel" onclick="myDialog.hide();"
update="formId">
<p:resetInput target="formId" />
</p:commandButton>
</h:form>
</p:dialog>
Run Code Online (Sandbox Code Playgroud)
但结果并不是我所期望的。经过一段时间的搜索,我找到了一个解决方案,将process="@this"属性添加到<p:commandButton>. 我的问题是为什么有必要?在需要这个过程的背景下真正发生了什么。我根本没有真正了解过程属性的概念。
我感到困惑与这2个概念ajax="false"和process="@this".结果视图是否相同?,是否有任何执行顺序?,是否都会执行验证阶段?我应该关心别的什么?