如何排序没有最后一项的列表

时间:2014-04-16 13:27:23

标签: angularjs

Angular js提供ui:sortable。我只想申请整个列表项..但不要拖放列表中的最后一项。你能帮忙吗?我怎么能从这里出来呢。

我在这里给予链接

http://codepen.io/thgreasi/pen/jlkhr

<div class="floatleft">
    <ul ui-sortable="sortableOptions" ng-model="list" class="list">
      <li ng-repeat="item in list" class="item">
        {{item.text}}
      </li>
    </ul>
  </div>

1 个答案:

答案 0 :(得分:2)

此问题的一个解决方案是仅对某些项启用排序:

您可以为禁用sortable的项目添加“unsortable”类:

<li ng-repeat="item in list"
    ng-class="{item: true, unsortable: $last}">
    {{item.text}}
</li>

创建sortableOptions时,您可以指定可应用哪些元素:

$scope.sortableOptions = {
    items: "li.item:not(.unsortable)",
    // other options here
}

This是一个有效的例子。

编辑: 在ngRepeat文档中,您有一个包含可能属性的列表 用于应用'unsortable'类的条件。 [$ index,$ first,$ middle,$ last,$ even,$ odd]