0

Primefaces コンポーネントで記述された JSF ページがあります。マイ ページは 3 つのセクターで構成され、各セクターにはアコーディオン パネルが含まれ、アコーディオンの各タブにはデータ テーブルが含まれます。

セクターの上部にある [フィルター] と [フィルターのリセット] の 2 つのボタンでデータ テーブルを検索したいと考えています。セクター内の検索は、他のセクター内の検索から独立している必要があります。

上記の検索/フィルタリングを実行する最適な方法を知りたいです。アコーディオン タブが開かれるたびに、データベースからレコードが読み込まれることを考慮してください。

<h:form id="form">
    <p:tabView id="sectors" value="#{multipleSearchBean.sectors}"
        var="sector">
        <p:tab id="sett" title="#{sector.description}">
            <ui:param name="key" value="searchText#{sector.id - 1}" />
            <p:inputText id="searchValue" value="#{multipleSearchBean[key]}" />

            <p:commandButton id="plainSearch" value="Filter"
                action="#{searchBean.plainSearch()}">
            </p:commandButton>

            <p:commandButton id="resetSearch" value="Reset Filters"
                action="#{searchBean.resetSearchFilters}">
            </p:commandButton>

            <p:accordionPanel id="accordion"
                value="#{searchBean.getTabs()}" var="tab" multiple="true"
                dynamic="true" cache="false"
                activeIndex="#{searchBean.activeIndexes}">
                <p:tab id="accordionTab" title="#{tab.title}">
                    <p:dataTable id="table" var="row"
                        value="#{searchBean.getObjects()}"
                        emptyMessage="Empty table" styleClass="#{sector.id - 1}_tableStyle">
                        <p:column headerText="Code">
                            <h:outputText value="#{row.code}" />
                        </p:column>
                        <p:column headerText="Description">
                            <h:outputText value="#{row.description}" />
                        </p:column>
                    </p:dataTable>
                </p:tab>
            </p:accordionPanel>
        </p:tab>
    </p:tabView>
</h:form>
4

0 に答える 0