我想通过PPR更新页面的一部分。
这是我要更新的页面部分:

 <h:panelGroup id="aggiungiAuto"
                  rendered="#{!autoBean.operazioneOk}">
        <ui:include src="../component/aggiungi_auto.xhtml"/>
 </h:panelGroup>


这是aggiungi_auto.xhtml中的commandButton

 <p:commandButton value="Submit"
                  update="growl aggiungiAuto aggiungiFoto"
                  actionListener="#{autoBean.insert}"/>


任何想法?

最佳答案

JS / Ajax在客户端而不是服务器端工作。 JSF在服务器端而不是客户端上工作。当您指示JSF不将组件呈现为HTML时,客户端将不存在任何内容,因此JS / Ajax将无法找到要刷新/更新的HTML元素。

您需要将其包装在另一个<h:panelGroup>中。

<h:panelGroup id="aggiungiAuto">
    <h:panelGroup rendered="#{!autoBean.operazioneOk}">
        <ui:include src="../component/aggiungi_auto.xhtml"/>
    </h:panelGroup>
</h:panelGroup>


这样,<span id="aggiuniAuto">总是出现在客户端,因此JS / Ajax将能够使用JSF生成的新HTML数据对其进行更新。

09-04 09:57