zura katsitadze
zura katsitadze

Reputation: 317

JSF DataTable filter example

I have the following code.

<p:column  headerText="Bank">
    <f:facet name="header">
    <p:selectOneMenu id="bank" value="#{reportsExecHistManagedBean.bankList}">
    <f:selectItem itemLabel="Select Bank" itemValue="" />
        <f:selectItems value="#{reportsExecHistManagedBean.bankList}"/>
        </p:selectOneMenu>
        </f:facet>
        <h:outputText value="#{tr.bank}" />
        </p:column>

how to enable filtering here, e.i when user select any selectItem, datatable shows filtered values. Also i have lazyLoading in my table. I do not want to following code

   <p:column headerText="Bank" filterBy="#{tr.bank}" style="text-align:left; width:10px;"  filterOptions="#{reportsExecHistManagedBean.bankList}" filterMatchMode="exact">
                            <h:outputText value="#{tr.bank}"/>
                        </p:column>

Upvotes: 2

Views: 16505

Answers (1)

AurA
AurA

Reputation: 12373

Filter is a very powerful feature available in primefaces datatable, you can use a filter as the example shown

For a column filter it goes like this

<p:column id="modelColumn" filterBy="#{car.model}"  
                headerText="Model" footerText="contains"  
                filterMatchMode="contains">

filterMatchMode can have values :- "startsWith"(default), "endsWith", "contains" and "exact"

You can know more about datafilters from the official website as under http://www.primefaces.org/showcase/ui/datatableFiltering.jsf

Upvotes: 5

Related Questions