如何清理<p:datatable> globalFilter字段?</p:datatable>

时间:2012-08-01 18:25:52

标签: jsf jsf-2 primefaces

我有以下要求:

如果用户按下其中一个分页器按钮且globalFilter inputText中有值,则应删除该值。

这是表(延迟加载):

  <p:dataTable id="osTable"
        var="os" 
        value="#{bean.lazyModel}" 
        selection="#{bean.selectedObjectSet}" 
        selectionMode="single"
        rowKey="#{os.ID}"
        paginator="true"
        paginatorPosition="bottom"
        paginatorTemplate="{RowsPerPageDropdown} {FirstPageLink} {PreviousPageLink} {CurrentPageReport} {NextPageLink} {LastPageLink}"
        rowsPerPageTemplate="5,10,15"
        rows="10"
        widgetVar="table">
        <f:facet name="header">  
            <p:outputPanel style="float: right">  
                <h:outputText value="Search all fields:" />  
                <p:inputText id="globalFilter" 
                             value="#{bean.find}" 
                             onkeypress="if (event.keyCode == 13) {table.filter()}" 
                             style="width:150px">

                </p:inputText>
            </p:outputPanel>  
        </f:facet>

我想我需要通过javascript来做到这一点,但我不知道如何实现这种功能。

1 个答案:

答案 0 :(得分:0)

试试这个:

<p:ajax event="page" oncomplete="jQuery('#yourFormID\\:yourDataTableID\\:globalFilter').val('')"/>

这应该在分页完成后清理过滤器....