Jsf 2 selectOneMenu按不同的列筛选,而不仅仅是按标签筛选
看看这里的“高级”示例:,我可以在我的Jsf 2 selectOneMenu按不同的列筛选,而不仅仅是按标签筛选,jsf-2,primefaces,selectonemenu,Jsf 2,Primefaces,Selectonemenu,看看这里的“高级”示例:,我可以在我的oneMenu中的每个选项中有两列,但是过滤只发生在项目的标签上 我希望能够通过任何一列进行过滤(与示例不同,我的两列都只包含文本,因此它们是可过滤的)。这种定制是否可行 将filter=“true”添加到中似乎没有任何效果,而用于编写自定义筛选规则的实用工具:filterFunction似乎也只在标签上运行 <p:outputLabel for="advanced" value="Advanced:" /> <p:selectOneMe
oneMenu
中的每个选项中有两列,但是过滤只发生在项目的标签上
我希望能够通过任何一列进行过滤(与示例不同,我的两列都只包含文本,因此它们是可过滤的)。这种定制是否可行
将filter=“true”
添加到
中似乎没有任何效果,而用于编写自定义筛选规则的实用工具:filterFunction
似乎也只在标签上运行
<p:outputLabel for="advanced" value="Advanced:" />
<p:selectOneMenu id="advanced" value="#{selectOneMenuView.theme}" converter="themeConverter" panelStyle="width:180px"
effect="fade" var="t" style="width:160px" filter="true" filterMatchMode="startsWith">
<f:selectItems value="#{selectOneMenuView.themes}" var="theme" itemLabel="#{theme.displayName}" itemValue="#{theme}" />
<p:column style="width:10%">
<h:outputText styleClass="ui-theme ui-theme-#{t.name}" />
</p:column>
<p:column>
<h:outputText value="#{t.displayName}" />
</p:column>
</p:selectOneMenu>
不,抱歉,使用SelectOne功能表无法执行此操作。您可以添加filterFunction,但在该函数中,您只能在标签上筛选客户端
或者,您可以使用,它可以在服务器端搜索您想要的任何内容,还可以显示自定义内容。如果您编写
添加列itemLabel=“#{v.placa}-#{v.marca}”的相同元素
您的过滤器将类似于filterMatchMode=“contains”
它起作用了
autocomplete
似乎要求我们通过completeMethod
属性提供过滤选项?此外,它似乎不支持纯客户端过滤(a已引发,但已关闭,状态为:“Wonnt fix”)。是。。Adnd客户端自动完成是不合逻辑的,因为它没有提供比带有filteringSorry的selectonemenu更高的性能。我在回答中写道,客户端应该是服务器端。更正它(已经晚了;-))
<p:column headerText="Placa">
<h:outputText value="#{t.placa}" />
</p:column>
<p:column headerText="Marca">
<h:outputText value="#{t.marca}" />
</p:column>