Angular js-Sort表基于歌曲持续时间并将默认排序设置为标题名称

时间:2016-02-16 16:23:54

标签: angularjs html5 sorting

如何按持续时间对显示歌曲标题,持续时间,艺术家的表格进行排序。我在HTML中使用了以下代码进行基于表头的排序。 另外,如何在不使用控制器的情况下将默认排序设置为歌曲标题?

<thead><tr><th class="title" ng-click="orderByField='titlename'; reverseSort = !reverseSort">Title</th>
<th class="artist" ng-click="orderByField='artist'; reverseSort = !reverseSort">Artist</th>
<th class="duration" ng-click="orderByField='duration'; reverseSort = !reverseSort">Duration</th></tr></thead>

<tbody>
<tr>
<th ng-repeat="songs in songs | orderBy : orderByField : reverseSort>
 <td>{{songs.title}}</td>
 <td>{{songs.artist}}</td>
 <td>{{songs.duration}}</td>
</tr></tbody>

2 个答案:

答案 0 :(得分:0)

您可以根据需要使用ngInit初始化排序条件:

<tbody>
    <tr ng-init="orderByField='title'; reverseSort=false"
        ng-repeat="songs in songs | orderBy : orderByField : reverseSort>

        <td>...</td>
    </tr>
</tbody>

答案 1 :(得分:0)

对于默认订单,请使用$ scope.orderByField =&#39; titlename&#39 ;;在控制器中。