首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >primefaces datatable的自定义过滤器

primefaces datatable的自定义过滤器
EN

Stack Overflow用户
提问于 2012-05-29 01:01:49
回答 1查看 2.8K关注 0票数 1

我使用的是PF3.2,JSF 2.0和GF 3.1。

我有一个数据表,上面有一个自定义过滤器。在Firefox中一切正常,但在IE中datatable不会更新。当我单击页面中的任意位置时,ajax就会触发,datatable也会更新。

这是代码-

代码语言:javascript
运行
复制
<p:dataTable id="std"
                                             value="#{myController.stdList}"
                                             selection="#{myController.std}"
                                             selectionMode="multiple"
                                             var="std"
                                             widgetVar="empTable"
                                             paginator="true"
                                             pageLinks="5"
                                             paginatorPosition="bottom"
                                             paginatorAlwaysVisible="true"
                                             currentPageReportTemplate="Page {currentPage} of {totalPages}"
                                             paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink}"
                                             rows="10"
                                             rowKey="#{std}"
                                             sortBy="#{std.lastName}"
                                             sortOrder="ascending"
                                             >
                                    <p:ajax event="rowSelect" 
                                            listener="#{myController.onRowSelectListener}" 
                                            process="@this"
                                            update="std"
                                            /> 

                                    <f:facet name="header">  
                                        <p:outputPanel>  
                                            <h:outputText value="#{bundle.GlobalFilterPrompt}" />  
                                    <p:inputText id="stdFilter" 
                                                 style="width:150px" 
                                                 valueChangeListener="#{myController.stdListener}">
                                        <p:ajax update="attendees" 
                                                process="@this" 
                                                event="change"
                                                />                     
                                    </p:inputText>

stdListener方法从输入框中读取值,获取新数据并更新数据表。

为什么它在IE中不起作用?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2014-01-01 03:25:38

我已经成功地使用PrimeFaces remoteCommand调用了数据表的AJAX/jQuery filter()函数:

代码语言:javascript
运行
复制
<p:inputText id="stdFilter" value="#{myController.myFilterValue}"
         style="width:150px">

<p:ajax event="change" onsuccess="myFilterUpdateCommand();"/>

<p:remoteCommand id="myRemoteCommandId" name="myFilterUpdateCommand"
                 actionListener="#{myController.stdListener()}"
                 update="attendees"
                 oncomplete="empTable.filter();"/>

我认为您需要向inputText组件添加一个值,以便将筛选器值添加到模型/支持bean。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10788130

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档