我正在使用PrimeFaces,我想知道它可以在同一页面内多次渲染一个面板。例如,我有一个如下面板:
<p:panel id="studentInfo">
<p:commandButton id="viewFullProfile" ....
<h:outputText value="Search" />
<p:inputText id="search" ....
</p:panel>
我希望此面板位于p:tabView控件的每个选项卡中。
<p:tabView id="studentProfile">
<p:tab id="tabA">
..render "studentInfo" here...
</p:tab>
<p:tab id="tabB">
..render "studentInfo" here...
</p:tab>
<p:tab id="tabC">
..render "studentInfo" here...
</p:tab>
</p:tabView>
答案 0 :(得分:0)
您需要一个这样的简单视图:
<强> studentInfo.xhtml 强>
<ui:composition>
<p:panel>
#{item}
</p:panel>
</ui:composition>
注意:我目前正在传递#{item}
作为可以成为学生实体的参数。
您的观点:
<p:tabView id="studentProfile">
<p:tab id="tabA">
<ui:composition template="studentInfo.xhtml">
<ui:param name="item" value="Student A" />
</ui:composition>
</p:tab>
<p:tab id="tabB">
<ui:composition template="studentInfo.xhtml">
<ui:param name="item" value="Student A" />
</ui:composition>
</p:tab>
<p:tab id="tabC">
<ui:composition template="studentInfo.xhtml">
<ui:param name="item" value="Student A" />
</ui:composition>
</p:tab>
</p:tabView>