【发布时间】:2013-11-29 01:30:48
【问题描述】:
使用 JSF 2.2 和 PrimeFaces 4.0。
基本上,我正在尝试以编程方式将选择选项(下拉列表)设置为<p:dataTable> 中的<p:column> 的过滤器。问题是当我使用下面的代码设置它时,它只呈现一个简单的输入文本,尽管它确实触发了客户端过滤操作。如何让下拉菜单显示?
填充选项列表的代码。
private SelectItem[] createFilterOptions() {
List<SelectItem> options = new ArrayList<SelectItem>();
options.add(new SelectItem("", "Tout"));
options.add(new SelectItem(0, "Pas encore"));
options.add(new SelectItem(1, "Patient en retard"));
options.add(new SelectItem(2, "Patient arrivé"));
options.add(new SelectItem(3, "Trop attendu"));
options.add(new SelectItem(4, "Patient préparé"));
options.add(new SelectItem(5, "Examen en cours"));
options.add(new SelectItem(6, "Examen terminé"));
options.add(new SelectItem(7, "Résultats remis"));
options.add(new SelectItem(8, "Examen annulé"));
return options;
}
这就是我设置列的 filterOptions 属性值的方式:
SelectItem[] etatExamOptions = createFilterOptions();
Column patSate = (Column) application.createComponent(Column.COMPONENT_TYPE);
patSate.setHeaderText("Etat");
patSate.setWidth("10");
patSate.setId("etatCol");
patSate.setFilterBy("examen.studyPatientState");
patSate.setFilterOptions(etatExamOptions);
patSate.setFilterMatchMode("exact");
patSate.setFilterStyle("dispo");
patSate.setSortBy("examen.studyPatientState");
patSate.setRendered(true);
【问题讨论】:
-
请问有人吗?我必须在问题文本中编辑一些内容吗?
-
你不应该修复你的
setFilterBy()和setSortBy()吗? stackoverflow.com/questions/20000815/… -
我修复了它,我仍然无法使这个工作,@BalusC 你是我的导师,请帮助。
-
这在现有资源的情况下是不可能的吗?
标签: jsf primefaces datatable dynamically-generated