默认排序 tr:table



有没有办法使用 tr:table 对 UI 上显示的初始数据进行排序?我知道有一些排序属性可以在tr:column上定义,并用于对表中存在的数据进行排序。

但此处的要求是在打开页面时默认对数据进行排序。除了从后端对表数据进行排序之外,有没有办法做到这一点?

默认情况下,您无法对表进行排序,但必须以编程方式进行排序。只需做一点工作,您就可以编写一个可重用的PhaseListener,您可以从 JSF 页面进行控制。

确保它只处理单个阶段(例如PhaseId.RESTORE_VIEW),并使用它使用 setSortCriteria 设置排序顺序:

List<SortCriterion> sortCriteria = new ArrayList<SortCriterion>(1);
String property = "myProperty";
boolean ascending = true;
sortCriteria.add(new SortCriterion(property, ascending));
myCoreTable.setSortCriteria(sortCriteria);

现在,您只需在表上添加两个<f:attribute/>即可传递属性名称和升序布尔值,以便为所有表创建可重用的侦听器。

<tr:document>中,您可以有一个包含要处理的表 ID 列表的<f:attribute/>

我所知:不!

您可以从此处阅读以获取更多信息:"特里尼达-1491"

最新更新