搜尋

首頁  >  問答  >  主體

angular.js - 怎麼實現點擊 “分數” 後按分數升序和降序排列?

如下程式碼實現了刷新自動降序排列,如何實現點擊事件,點擊後才升序和降序排列?

黄舟黄舟2751 天前625

全部回覆(2)我來回復

  • 漂亮男人

    漂亮男人2017-05-15 17:00:26

    首先,樓上說的對,你ng-repeat放錯位置了,應該放在tr了。

    ng-click如果只是按分數排序,可以不傳參數;如果課程名稱和臉也排序,那就傳參數,調同一個方法。

    分數排序這個地方,controller裡聲明一個排序標識,升序或降序都可以,用來記錄目前在排序的狀態的。出發sort()這個排序方法的時候先判斷狀態,依照狀態來判斷排序方式。並把標識放到'score'那個位置,後面那個翻轉不要了。

    orderBy:sortFlag
    

    controller裡面切換sortFlag的值。

    $scope.sortFlag = 'score'; //声明标识变量并初始化排序方式
    $scope.sort = function(){
        $scope.sortFlag = $scope.sortFlag === 'score' ? '-score' : 'score';
        //'-score' 减号,变换排序方式
    }
    

    回覆
    0
  • 習慣沉默

    習慣沉默2017-05-15 17:00:26

    你ng-repeat的位置放錯了吧,應該要放在tr那裡吧

    回覆
    0
  • 取消回覆