PrimeFaces如何取消filterBy组件上的事件侦听器

问题描述

|| 我在列上使用带有filterBy的PrimeFaces dataTable。我还有一个链接,单击该链接可清空基础表。一切正常,直到我过滤掉某些东西。如果然后清除基础表,该表仍会从缓存中显示,并且直到我更改filterBy值后,它才会更新为空表。看来filterBy输入组件仍在保留事件侦听器。这是我的代码片段:
<h:form id=\"logFormId\" prependId=\"false\">
  <p:dataTable value=\"#{logger.logLines}\" var=\"logMsg\"
  id=\"loggerTable\" dynamic=\"false\" widgetVar=\"logTable\">
    <f:facet name=\"header\">
      <h:commandLink action=\"#{logger.clearList}\">
    <f:ajax render=\"@form\" execute=\"@form\" />
  </h:commandLink>
    </f:facet>
    <p:column>
  <f:facet name=\"header\">
    <h:outputText value=\"#{msgs.LoggerDate}\" />
  </f:facet>
  <h:outputText value=\"#{logMsg.dateText}\" />
</p:column>
<p:column sortBy=\"#{logMsg.source}\" 
    filterBy=\"#{logMsg.source}\" filterMatchMode=\"contains\" >
  <f:facet name=\"header\">
    <h:outputText value=\"#{msgs.LoggerSource}  \" />
  </f:facet>
  <h:outputText value=\"#{logMsg.source}\" />
</p:column>
  </p:dataTable>
</h:form>
    

解决方法

我不确定我是否知道答案,但是您可以尝试以下方法。我认为这是素面2.2。 我认为p:datatable中不再使用dynamic属性。 在您的f:ajax元素中,尝试render = \“ loggerTable \”而不是@form。     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...