p:列下拉过滤器显示的数据与使用的数据不同?

时间:2016-07-20 10:51:01

标签: primefaces

我的PrimeFaces表中的一列有一个下拉过滤器。该列的数据库中的数据是字符字段而不是字符串,我希望下拉过滤器中显示的信息与使用的信息不同。因此,在列表中没有“W”,下拉列表显示“警告”;但是当应用过滤器时,它会搜索“W”。

有没有一种简单的方法可以使用PrimeFaces(修改f:selectItems?),或者我必须做某种自定义过滤方法?

    <p:column filterBy="#{hbel.logFlag}" headerText="Log Flag" filterMatchMode="exact">
        <f:facet name="filter">
            <p:selectOneMenu onchange="PF('widgetTable').filter()" >
                <f:selectItem itemLabel="Choose" itemValue="#{null}" noSelectionOption="true" />
                <f:selectItems value="#{homeController.flags}" />
            </p:selectOneMenu>
        </f:facet>
        <h:outputText value="#{hbel.logFlag}" />
    </p:column>

指向homeController.java类中的以下内容

private final static String[] flags;
static
{
  flags = new String[4];
  flags[0] = "B";
  flags[1] = "R";
  flags[2] = "T";
  flags[3] = "W";
}

0 个答案:

没有答案