我想对filter
使用<p:selectOneMenu>
属性,该属性有一个类型为Units的项目列表,它是Enum
类,如下所示:
public enum Units {
PERCENT, MILLIMETER, METER, NUMBER
}
当filter
与<p:selectOneMenu>
一起使用时,不会过滤任何内容。我认为这是因为列表中有单位类型的项目,我正在比较过滤器中的字符串。我可以使用转换器将Unit项目转换为String,然后才能在过滤器中匹配它们吗?如果是这样,我的转换器应该如何?
答案 0 :(得分:2)
我可以重现你的问题。仅当项目列表超出默认的可见项目数量时,过滤器才有效。这实际上是JavaScript中的一个错误,负责创建菜单和初始化过滤器。你最好的选择是reporting它是PrimeFaces家伙的一个错误。
答案 1 :(得分:0)
好的,这就是我的工作方式。在<p:selectOneMenu>
我添加了一个属性height="200"
。根据代码段SelectOneMenu with filter not working with less than 10 elements,过滤器仅在设置高度时才有效。