2014-04-16 59 views
0

Angular js提供了ui:可排序。我只想申請整個列表項目..但不想從列表中拖放最後一項。你能幫忙嗎?我怎麼能從這裏出來。如何排序沒有最後一項的列表

我給的鏈接在這裏

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> 

回答

2

一個解決這個問題的是使那種只對某些項目:

你一個類「不可排序」添加到項目可排序禁用:

<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文檔,你有可能是在運用「不可排序」類條件中使用 的屬性的列表。 [$ index,$ first,$ middle,$ last,$ even,$ odd]

+3

甚至可以使用$ last作爲ng-class中unsortable的表達式。 –

相關問題