使用RichFaces时排序<a4j:repeat> </a4j:repeat>

时间:2012-05-23 03:35:43

标签: jsf-2 richfaces ajax4jsf

我有一个xhtml页面,其中使用<a4j:repeat><ui:repeat>在表格中显示数据。虽然我正在使用RichFaces 3.3,但我使用了上面的内容,因为我的表包含嵌套映射,以下是代码:

<h:form id="viewForm">
    <rich:simpleTogglePanel switchType="client" opened="true">
        <f:facet name="header"> Display Data </f:facet>

        <a4j:outputPanel id="pnlDataTable">
            <table class="rich-table " border='1'>
              <thead class="rich-table-thead">
                <tr class="rich-table-header">
                  <th class="rich-table-headercell ">
                    <h:selectBooleanCheckbox value="#{Bean.allSelect}" >
                      <a4j:support event="onchange" action="#{Bean.allCheck}" 
                          reRender="pnlDataTable" /> 
                    </h:selectBooleanCheckbox>
                    <h:outputText value="Check" />
                  </th>                                 
                  <ui:repeat value="#{Bean.viewmap.get(0).dataMap}" 
                    var="displayBean" rendered="#{not empty Bean.viewmap}">
                    <th class="rich-table-headercell">
                      <h:outputText value="#{displayBean.name}" />
                    </th>
                  </ui:repeat>
                </tr>
              </thead>

              <tbody>
                <a4j:repeat value="#{Bean.viewmap}" var="displayRecord" 
                    id="dispData" rows="10">
                  <tr>
                    <td>
                      <h:selectBooleanCheckbox value="#{displayRecord.assigned}">
                        <a4j:support event="onchange" reRender="recordData"
                             action="#{Bean.saveReAssigned}" />
                      </h:selectBooleanCheckbox>
                    </td>
                    <ui:repeat id="recordData" var="displayBean"
                        value="#{displayRecord.dataMap}" >
                      <td>
                        <h:outputText value="#{displayBean.value}" />
                      </td>
                    </ui:repeat>
                  </tr>
               </a4j:repeat>
              </tbody>
            </table>
        </a4j:outputPanel>

        <a4j:outputPanel id="scrollBar">
             <rich:datascroller align="left" for="dispData" 
                    renderIfSinglePage="false" reRender="pnlDataTable" />
        </a4j:outputPanel>

        <br />
        <br />
    </rich:simpleTogglePanel>
</h:form>

使用<rich:datascroller>的分页工作正常。现在我想实现列的排序 - 需要建议才能实现这一点。这也是显示数据的正确方法(使用<ui:repeat><a4j:repeat>)?

0 个答案:

没有答案