1

で遅延読み込みを使用してい<p:dataTable>て、ウィジェットでフィルターをクリアしようとしています。PrimeFaces.widget.DataTable.clearFilters()
この関数はすべてのフィルターをクリアしますが、フィルターイベントは開始されません。そのため、Map<String, String>フィルターの値は同じままで、datatableは更新されません。

public List<LazyModelInterface> load(int startingAt, 
       int maxPerPage, 
       String sortField, 
       SortOrder sortOrder, 
       Map<String, 
       String> filters)
4

1 に答える 1

0

f:ajax次のコードを実行するメソッドを指すリスナーで(h:commandButtonたとえば)いくつかを使用するのはどうですか?

public void resetFilters(AjaxBehaviorEvent ev) {
    DataTable dataTable = (DataTable) FacesContext.getCurrentInstance().getViewRoot()
            .findComponent("myFormId:myTableId");
    if (dataTable != null) {
        dataTable.reset();
    }
}
于 2012-12-13T09:00:07.107 に答える