我正在尝试在datatable(primefaces 3.5)中进行筛选。仅当用户单击commandLink时才应触发筛选器。
<h:commandLink title="#{open}"
onclick="$('#form\\:filteredTable\\:statusColumn_filter').val('OPEN'), filteredTable.filter()">
<h:graphicImage name="16x16.png" styleClass="ico" />
</h:commandLink>
我的桌子:
<h:form id="form">
<h:panelGroup>
<div>
<p:dataTable widgetVar="filteredTable" var="y" value="#{x}" rendered="#{w.showFilterButtons}" filteredValue="#{w.filteredX}">
<p:column id="statusColumn" headerText="label"
filterBy="#{y.status}" filterMatchMode="exact"
filterStyle="display:none;"
filterOptions="#{w.statuses}">
<h:outputText value="#{y.status.name}"/>
</p:column>
</p:dataTable>
</div>
</h:panelGroup>
</h:form>
我有3个问题与此代码:
1-过滤器不工作。如果我点击命令链接,页面会重新加载,但没有任何内容被过滤。可能是因为#form\: filteredTable\:statusColumn_filter'). val()返回未定义。所以我想我没有设置过滤器的值(对吗?)
2-我想做一个默认的过滤器,这样当datatable第一次加载时,它就已经被一个状态过滤了。
3-这个数据在谷歌地图的弹出窗口中。但是当我点击命令链接时,整个页面都会重新加载,所以弹出窗口是“关闭的”,地图会回到最初的缩放。这样,用户将不得不再次缩放,点击地图中的标记,再次打开弹出窗口,以查看过滤后的数据。这可不好。有一种方法只重新加载可更新的?
我弄明白了,忘了在这里发布我的解决方案。
服务器端:值“x”是默认值的列表。当用户单击commandButton时,将调用一个方法来更新列表。
命令按钮:
<p:commandButton actionListener="#{bean.upadteXList}"
update="filteredTableId"
oncomplete="filteredTable.filter()"
/>
数据表:
<h:form id="form">
<h:panelGroup>
<div>
<p:dataTable id="filteredTableId" widgetVar="filteredTable" var="y" value="#{x}" rendered="#{w.showFilterButtons}">
<p:column id="statusColumn" headerText="label">
<h:outputText value="#{y.status.name}"/>
</p:column>
</p:dataTable>
</div>
</h:panelGroup>
</h:form>
在我的应用程序中,我使用全局过滤器搜索Primefaces数据表中的记录,并在同一数据表上应用了DataExporter。 当我搜索任何记录并进行导出时,它会返回给我一个完整的数据列表,而不是过滤列表。 我的开发环境是:java 6.0、Primefaces 3.2、JSF2.1、GlassFish Server 3.1.2、Netbeans 7.1.1 登记在我的dataTable和dataEx
我有一个可供您下载文件的日期。它有效。但是,当我尝试下载过滤后返回的文件时,它是列表中的第一个。 这是我的文件,其中包含可数据: <代码> 这是支持Bean负责下载的方法: <代码> 这是backingBean负责下载的helper方法:< code> <代码>
我将primefaces数据表与bootsfaces一起使用,我想解决一个CSS冲突。 从primefaces showcase实现过滤器示例: 给我这个结果:datatable过滤器示例很好 但是,在页面中添加bootsfaces组件,例如(唯一的更改是添加一个空
我对使用PrimeFaces 3.4.1和JSF 2.1.6的dataTable有以下问题。第一次加载页面时,数据表中充满了数据库中的数据,但每当在页面上执行操作(编辑链接、数据表排序或过滤)时,数据表就会丢失其数据。DataTable包含来自此类的元素: 在dataTable上执行操作后进行调试时,我们只在envioDatasujeto字段上保留数据,元素上的其他所有数据都会丢失。 这是xhtm
在Primefaces showcase上,左侧菜单上有一个搜索输入。菜单看起来像一个手风琴面板,每个键向上都会触发某种ajax来过滤手风琴选项卡。 他们是如何做到这一点的?我查看了他们的展示案例,但只看到DataTable的类似示例,而没有看到AccordionPanel的任何示例。
我们提供了一个数据过滤器来对接收到的表单数据进行过滤。整个数据过滤分四步: 非空验证 数据类型验证 数据长度验证 数据净化 过滤器定义了一些验证规则的常量,供你组合使用,采用位运算的形式,如果要同时验证多个指标,请使用与运算(|), 例如: DFILTER_STRING|DFILTER_SANITIZE_TRIM. 表示数据必须是字符串并对字符串进行去空格操作。 数据类型验证选项值 选项名称 选项