我在Web应用程序中有一个Primefaces数据表。一列包含一个布尔值(表示为selectBooleanCheckbox)。现在我想用此列过滤表格。当我添加filterBy
和filterMatchMode
属性时,会显示过滤标题,但我必须使用true
或false
进行过滤。
这是该列的定义:
<p:column headerText="A Bool" sortBy="someBool" width="20"
filterBy="someBool" filterMatchMode="exact">
<h:selectBooleanCheckbox value="#{row.someBool}" disabled="true" />
</p:column>
带复选框的列显示正确。只有标题显示为文本字段。
我正在使用Primefaces 4.如何在标题中选中一个复选框来过滤数据?
答案 0 :(得分:0)
来自Primefaces 4.0 User Guider,第141页:
如果您想使用下拉列表而不是输入字段来仅允许 预定义过滤器值使用 filterOptions 属性和选择项的集合/数组作为值
这样您就可以通过在列表中选择true或false来进行过滤。但是你想在标题上有一个复选框,你可以尝试这个(也可以从用户指南,第142页):
<f:facet name="header">
<p:outputPanel>
<h:outputText value="Search all fields:" />
<h:inputText id="globalFilter" onkeyup="PF('carsTable').filter()" />
</p:outputPanel>
</facet>
我希望这可以帮助你朝着正确的方向前进。