默认情况下,primeface筛选dataTable的行,方法是查找以列开头在搜索区域中输入的字符串开头的行。如何过滤该列包含(而不以开头)在搜索区域中输入的字符串的DataTable行?
您可以使用dataTable的filterMatchMode
属性来执行此操作p:column
。在PrimeFaces展示柜上可以找到一个很好的例子。
因此,如果我们以上述示例为例,则可能大致如下:
<p:dataTable var="car" value="#{dtFilterView.cars}" widgetVar="carsTable"
filteredValue="#{dtFilterView.filteredCars}">
<p:column filterBy="#{car.id}" headerText="Id" footerText="contains"
filterMatchMode="contains">
<h:outputText value="#{car.id}" />
</p:column>
</p:dataTable>
Run Code Online (Sandbox Code Playgroud)
该属性filterMatchMode
接受诸如contains,endsWith,startsWith,exact ...之类的值。