3

我有一个由一个标题和一个正文组成的模板。在标题中有一个 Primefaces ajax 组件,它必须更新我的身体部分。问题是实现正文模板的页面具有面板和其他具有不同 ID 的组件,并且update我的标题组件的属性需要一个 ID 列表。

我需要的?我需要让我的页面设置标题组件的update属性。因此,在我的应用程序流程中的任何地方,标题组件都会更新特定页面的正确部分。

那可能吗?

在 PrimeFaces 3.5、Mojarra 2.1.13、JDK 1.6.x 上运行。谢谢!

4

1 回答 1

2

如果我理解正确,您可以这样做:

您的主模板应如下所示(例如index.xhtml):

<h:head>

</h:head>
<h:body>
    <h:form>
        <p:commandButton update="#{regions}" value="Update" />
    </h:form>

    <ui:insert name="page" />
</h:body>

每个页面或您的页面应如下所示(例如page.xhtml):

<ui:composition template="index.xhtml">
    <ui:param name="regions" value=":panel1" />

    <ui:define name="page">
        <p:panel id="panel1">
            <h:outputText value="#{bean.date}" />
        </p:panel>
        <p:panel id="panel2">
            <h:outputText value="#{bean.date}" />
        </p:panel>
    </ui:define>
</ui:composition>

在此示例中,您只需ui:param根据要更新的组件列表更改值。注意表单 ID 和prependId="false".

于 2013-06-08T19:54:15.240 回答