对表中的列进行排序,显示奇怪的行为

时间:2015-05-15 18:24:11

标签: javascript jquery angularjs sorting

我从网络服务中提取一些数据并填写表格。我希望列能够根据用户单击箭头按升序和降序对数据进行排序。它过去工作正常,但我最近添加了一些其他js,现在排序"工作" 。如果没有一个明确的提升顺序和一个明确的下降顺序?目前,当我点击一列时,看起来该列按升序和降序排序,但是如果你看到它右边的列,它们似乎正在经历某种循环。

您可能希望点击一列2次,所有数据都会回到2点击前的位置,但需要26-28次点击才能让所有其他列完全恢复原状。这是正常行为吗,因为大多数条目在某些列中具有相同的值?看起来它可能会循环显示具有相同名称的所有内容,然后在升序列表的顶部显示具有相同精确值的内容。

我有plunker here显示我正在谈论的行为。只需按名称排序并观察右侧的列。

这就是我为表格调用ng-repeat的方式:

    <tr data-ng-repeat="alert in recentalerts | orderBy:savedOrder:reverse">
      <td>{{alert.name}}</td>
      <td>{{alert.time}}</td>
      <td>{{alert.ip}}</td>
      <td>{{alert.column}}</td>
      <td>{{alert.type}}</td>
    </tr>

其中savedOrder只是用户选择排序的最后一件事。它用于跟踪$interval之间的排序顺序。

0 个答案:

没有答案