按指定列排序和sortMode ="多个"之间的区别在Primefaces Datatable中

时间:2015-04-06 13:07:31

标签: jsf jsf-2 primefaces

我正在使用Primefaces-3.5和JSF。

我根据某些条件(颜色,品牌等)和点击List of Cars并在DataTable中显示button

我需要根据DataTable中的Column(Car Id)对DataTable进行排序,因此我使用了以下代码。

<p:dataTable var="car" value="#{dtSortView.cars1}" style="margin-bottom:40px" sortBy="#{car.id}" sortOrder="ascending">
            <f:facet name="header">
                Sort By a Specified Column
            </f:facet>
            <p:column headerText="Id" sortBy="#{car.id}">
                <h:outputText value="#{car.id}" />
            </p:column>
    </p:dataTable>

默认情况下,使用Car Id的升序对DataTable进行排序, 但如果我改变标准,然后获得列表,那么DataTable 按车辆ID降序排列!

如果我使用sortMode="multiple",则表示我无法使用sortBysortOrder

我知道Sort by a specified Column and sortMode="multiple"之间存在差异,但我想更明确地理解它。

示例代码:

<p:dataTable var="car" value="#{dtSortView.cars1}" style="margin-bottom:40px">
        <f:facet name="header">
            Single Column Sort
        </f:facet>
        <p:column headerText="Id" sortBy="#{car.id}">
            <h:outputText value="#{car.id}" />
        </p:column>
</p:dataTable>

<p:dataTable var="car" value="#{dtSortView.cars2}" sortMode="multiple">
        <f:facet name="header">
            Multiple Column Sort with Metakey
        </f:facet>
        <p:column headerText="Id" sortBy="#{car.id}">
            <h:outputText value="#{car.id}" />
        </p:column>
</p:dataTable>

DataTable Sorting ShowCase

[建议重复](Initial sortorder for Primeface datatable with multisort),但我的问题很多都是关于Sort by a specified column and SortMode之间的区别。

0 个答案:

没有答案