我正在使用primefaces tabview和制表符来分隔数据。当我使用ui:include src来包含一个带有保存按钮的数据表而不包含在include src代码中的选项卡代码时,我得到一个未包含在选项卡中的保存按钮
这是标签代码
<p:tab title="Event Costs" disabled="#{eventCreateEditModel.projectEvent.projectEventId==0}">
<p:panelGrid id="costsPanelGrid">
<ui:include src="eventCreateEditCosts.xhtml"/>
<p:row>
<p:column colspan="2"> <p:commandButton value="Save" actionListener="#{eventCreateEditModel.update}" update="@form"/></p:column>
</p:row>
</p:panelGrid>
</p:tab>
这是数据表代码
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:p="http://primefaces.org/ui">
<p:panel header="Audits List" update="@form" closable="false" >
<p:panelGrid columns="3">
<p:dataTable value="#{eventCreateEditCostModel.costEntities}" var="eventCost"
rowKey="#{eventCost.eventCostId}"
sortMode="multiple"
resizableColumns="true"
widgetVar="eventCostTable"
rows="10">
<f:facet name="header">
Event Audit Listing
</f:facet>
<p:column headerText="ID">
<h:outputText value="#{eventCost.eventCostId}" />
</p:column>
</p:dataTable>
</p:panelGrid>
</p:panel>
“保存”按钮不包含在选项卡中,但显示在选项卡外部。
有没有人见过这类问题?还有另一种包含来源的方法吗?
答案 0 :(得分:0)
仅通过选项卡中包含src解决了该问题。我必须使用保存按钮删除panelgrid和行/列,以便tabview正常工作。我将panelgrid和save按钮放在eventCreateEdtCosts.xhtml文件中。这违背了我可重用组件的目标,但确实解决了标签显示问题。
<p:tab title="Event Costs" disabled="#{eventCreateEditModel.projectEvent.projectEventId==0}">
<ui:include src="eventCreateEditCosts.xhtml"/>
</p:tab>