已排序表中的动态列标题

时间:2018-01-19 00:05:35

标签: javascript angularjs

我正在尝试循环遍历数组,以便动态打印一些列标题。我看到数组值被插入到HTML代码中,但是每当我点击其中一个列标题时,我就无法对表进行排序。

奇怪的是:当我用明文html替换{{colHeader}}变量时,tablesorter正常运行。那么有谁知道我做错了什么,以及如何解决它?

<script type="text/javascript">
    $scope.colHeaders =  {
        'id' ,
        'name' ,
        'symbol',
    };
    $scope.sortType    = 'id'; // specifies column to sort

</script>

<table class="table">
    <thead>
        <tr>
          <th ng-repeat="colHeader in colHeaders">
            <a href="#" ng-click="sortType = '{{ colHeader }}'">
                column header
            </a>
          </th>
        </tr>
    </thead>
</table>

1 个答案:

答案 0 :(得分:0)

在html模板中使用内联函数是个坏主意。

尝试使用控制器中的功能,如下所示:<th ng-repeat="colHeader in colHeaders" ng-click="sortBy(colHeader)">

这是一个工作的掠夺者:https://plnkr.co/edit/NTgjVpKoKhrjyP1YuN2n