我想在primefaces 4.0中对数据表进行排序,但它没有工作。这是我的数据表
<p:dataTable value="#{transactionReportBacking.transaction}"
var="trx"
lazy="true"
rows="20"
paginator="true"
paginatorAlwaysVisible="false"
styleClass="table table-hover table-striped"
id="tableTransaction">
<p:columnGroup type="header">
<p:row>
<p:column headerText="Customer ID" sortBy="customerId"/>
<p:column headerText="Nama Customer"/>
<!--<p:column headerText="Area" />-->
<p:column headerText="Jumlah Dibayar"/>
<p:column headerText="Nama Collector" />
<p:column headerText="Waktu Transaksi"/>
<p:column headerText="Tanggal Janji Bayar"/>
</p:row>
</p:columnGroup>
<p:column >
<h:outputText value="#{trx.customerId}" styleClass="numeric-value"/>
</p:column>
<p:column sortBy="customerName">
<h:outputText value="#{trx.customerName}" />
</p:column><p:column style="text-align: right" sortBy="amount">
<h:outputText value="#{trx.amount}" style="display: inline-block; text-align: right">Rp.
<f:convertNumber pattern="#,###.##" />
</h:outputText>
</p:column>
<p:column sortBy="collector.name">
<h:outputText value="#{trx.collector.name}" />
</p:column>
<p:column sortBy="transactionTimestamp">
<h:outputText value="#{trx.transactionTimestamp}" styleClass="numeric-value">
<f:convertDateTime pattern="dd-MM-yyyy HH:mm:ss" timeZone="GMT+7"/>
</h:outputText>
</p:column>
<p:column sortBy="promisedDate">
<h:outputText value="#{trx.promisedDate}" styleClass="numeric-value">
<f:convertDateTime pattern="dd-MM-yyyy" timeZone="GMT+7"/>
</h:outputText>
</p:column>
</p:dataTable>
您将看到<p:column headerText="Customer ID" sortBy="customerId"/>
我可以点击“客户ID”列,但没有任何变化。任何回复都是不合理的,对不起我的英语不好。哦,我正在使用lazydatamodel和分页
答案 0 :(得分:0)
为什么不用headerText
一次创建列而不是为标题创建columngroup?
您应该可以使用以下内容对列进行排序:
<p:column headerText="Customer ID" sortBy="customerId">
<h:outputText value="#{trx.customerId}" styleClass="numeric-value"/>
</p:column>