Sorting 如何在primefaces列中排序?
所以,我已经试了三天了。。。首先,我发现primefaces的标签p:columns有一个bug,因为它的sortFunction要求一个属性而不是一个方法。因此,我找到了这个解决方案: 尽管如此,即使达到了这个方法,我也不知道我要对哪个列进行排序,因为我不确定是否可以传递一个参数。有人能帮忙吗? 我在这里使用的是PrimeFaces5.0 这是我的数据表:Sorting 如何在primefaces列中排序?,sorting,jsf,jsf-2,primefaces,dynamic-columns,Sorting,Jsf,Jsf 2,Primefaces,Dynamic Columns,所以,我已经试了三天了。。。首先,我发现primefaces的标签p:columns有一个bug,因为它的sortFunction要求一个属性而不是一个方法。因此,我找到了这个解决方案: 尽管如此,即使达到了这个方法,我也不知道我要对哪个列进行排序,因为我不确定是否可以传递一个参数。有人能帮忙吗? 我在这里使用的是PrimeFaces5.0 这是我的数据表: <p:dataTable value="#{categoryBean.categories}" var="category">
<p:dataTable value="#{categoryBean.categories}" var="category">
<p:column sortBy="#{category.name}">
<f:facet name="header">
<h:outputText value="Category"></h:outputText>
</f:facet>
<h:outputText value="#{category.name}"></h:outputText>
</p:column>
<p:columns value="#{categoryBean.columns}" var="column" columnIndexVar="i" sortBy="#{category}" sortFunction="#{categoryBean.customOrder}">
<f:facet name="header">
<h:outputText value="#{column.header}">
</h:outputText>
</f:facet>
<h:outputText value="#{category[column.property][i].sumGrade/category[column.property][i].countGrade}"></h:outputText>
</p:columns>
</p:dataTable>
因此,对象可以到达方法,但是,我需要知道如何传递参数或其他东西,这样我才能知道我引用的列。
谢谢大家。
有一个属性sortBy
和sortOrder
比如说
<p:dataTable id="table1" var="x" value="#{myBackingBean.myEntities}" sortBy="#{x.id}" sortOrder="descending">
…假设你的支持bean对象有一个
.getId()
字段。发布一些代码。。。或者在这里查看官方文档:它使用动态列,我必须排序为{category[column.property][I].sumGrade/category[column.property][I].countGrade}
<p:dataTable id="table1" var="x" value="#{myBackingBean.myEntities}" sortBy="#{x.id}" sortOrder="descending">