使用h:commandButton进行Ajax更新和提交

时间:2013-03-21 13:17:45

标签: ajax jsf jsf-2 primefaces

如何更新div并使用<h:commandButton>进行部分提交,我以前使用<p:commandButton>通过将ajax属性设置为true并将update属性设置为:statusBlock来进行部分提交,其中id为<h:panelGroup>的状态是statusBlock。我在使用<p:commandButton>时遇到了一些设计问题,所以我无法使用它,所以我必须使用<h:commandButton>

2 个答案:

答案 0 :(得分:23)

这是通过在其中嵌套<f:ajax>来完成的。

在效果中,

<p:commandButton ... process="@form" update=":statusBlock" />

完全相同
<h:commandButton ...>
    <f:ajax execute="@form" render=":statusBlock" />
</h:commandButton>

请注意,与PrimeFaces等效的细微差别是,PrimeFaces在进程/执行中默认为@form,而<f:ajax>默认为@this,因此您可能需要明确在PrimeFaces组件中未指定execute="@form"属性的所有位置指定process

另见:

答案 1 :(得分:3)

您可以将标准组件与f:ajax一起使用,例如

<h:form id="myForm">       
  <h:commandButton value="Push Me">
     <f:ajax execute="myForm" render="statusBlock" />
  </h:commandButton>
  <h:panelGroup id="statusBlock">
  </h:panelGroup> 
</h:form>