我正在使用spring / hibernate / primefaces / jsf 2.0开发一个java web应用程序。我想知道我是否可以在包含行和列的panelgrid中填充列表,而不是使用数据表?还有其他选择吗?我不想使用数据表。请指教。
<ui:composition xmlns="http://www.w3.org/1999/xhtml"
xmlns:c="http://java.sun.com/jstl/core"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:f="http://java.sun.com/jsf/core"
xmlns:ui="http://java.sun.com/jsf/facelets"
xmlns:p="http://primefaces.org/ui">
<h:form>
<p:panelGrid>
<f:facet name="header">
<p:row>
<p:column colspan="1">SN</p:column>
<p:column colspan="2">List of Rating</p:column>
<p:column colspan="24">Values</p:column>
</p:row>
<p:row>
<p:column colspan="3" styleClass="ui-widget-header">
<p:spacer height="0" />
</p:column>
<p:column colspan="8">
Rating
</p:column>
</p:row>
</f:facet>
<p:row>
<p:column>1</p:column>
<p:column colspan="2">Innovative Ideas</p:column>
<p:column colspan="1" style="width:2px;">0</p:column>
<p:column colspan="1" style="width:2px;">1</p:column>
<p:column colspan="1" style="width:2px;">2</p:column>
<p:column colspan="1" style="width:2px;">3</p:column>
<p:column colspan="1" style="width:2px;">4</p:column>
<p:column colspan="1" style="width:2px;">5</p:column>
<p:column colspan="1" style="width:2px;">6</p:column>
<p:column colspan="1" style="width:2px;">7</p:column>
</p:row>
<p:row>
<p:column colspan="1">1.1</p:column>
<p:column colspan="2">New technology</p:column>
<p:column style="font-weight: bold;" colspan="8">
<p:selectOneRadio id="rating"
styleClass="selectRadio"
value="#{ratingComponent.rate.myrating}">
<f:selectItems
value="#{ratingComponent.ratingList}"
var="rate" itemValue="#{rate.code}" itemLabel="" />
<p:spacer height="0" width="20" />
<p:ajax process="competency_self_rating1"
listener="#{ratingComponent.saveRating('1',ratingComponent.rate.myrating,'rating')}" />
</p:selectOneRadio>
</p:column>
</p:row>
</p:panelGrid>
</h:form>
答案 0 :(得分:0)
就布局而言,您始终可以匹配,例如通过组合datagrid和panelgrid。在谈到展示示例时,这将是一个重写的基本表
<p:dataGrid var="car" value="#{tableBean.cars}" columns="1"
rows="12" paginator="true" id="cars">
<h:panelGrid columns="3" style="width: 100%;">
<h:outputText value="#{car.year}"/>
<h:outputText value="#{car.model}"/>
<h:outputText value="#{car.color}"/>
</h:panelGrid>
</p:dataGrid>
如果您需要所有dataTable功能(多选,单元格编辑器等),您可能会遇到问题。但如果布局是您的主要关注点,那么您可以这样做