我发现primefacess现在支持treeTable排序的信息。 http://blog.primefaces.org/?p=3017
''用法与通过列''
的sortBy属性的数据表相同但是当我添加sortBy属性时,排序功能不会显示。
welcome.xhtml 中有我的treeTable。
<h:form id="form">
<p:treeTable id="treeTable"
value="#{treeCheckBox.root}" var="manager"
selection="#{treeCheckBox.selectedNodes}" selectionMode="checkbox">
<p:column style="width:100px" sortBy="id">
<f:facet name="header">
ID
</f:facet>
<h:outputText value="#{manager.id}"/>
</p:column>
<p:column style="width:100px" sortBy="description">
<f:facet name="header">
Description
</f:facet>
<h:outputText value="#{manager.description}"/>
</p:column>
<p:column style="width:100px" sortBy="knowledgeDate">
<f:facet name="header">
KnowladgeDate
</f:facet>
<h:outputText value="#{manager.knowledgeDate}"/>
</p:column>
</p:treeTable>
</h:form>
简单的经理POJO。
public class Manager implements Serializable{
private static final long serialVersionUID = -1927658103477398301L;
private String id;
private String description;
private String knowledgeDate;
public Manager() {
}
public Manager(String id, String description, String knowledgeDate) {
this.id = id;
this.description = description;
this.knowledgeDate = knowledgeDate;
}}
//... getters and setters
答案 0 :(得分:0)
据我了解,此功能仅适用于Primefaces 5和/或Primefaces Elite。由于我没有看到您的代码有任何问题,我假设您使用Primefaces 4的免费版本。
答案 1 :(得分:0)
Primefaces声明他们在5版本中对树状故事进行了排序方法。 这已于2014年5月发布。
但我们仍然无法过滤treeTable。希望它能成为下一版本的下一个功能。
答案 2 :(得分:0)
我想,你必须改变这个:
false = " sortBy="id">"
true = " sortBy="manager.id">"