簡體   English   中英

淘汰表:從排序列表中排除項目

[英]Knockout-Sortable: Exclude item from sort list

我正在使用剔除可排序的集合進行排序,並且我有一個“新”行,該行應始終為空,並位於列表的底部。 我可以通過檢查beforeMove中的位置來取消“此之后”的放置,但是如果我可以防止該行下面的區域首先顯示為可放置的目標,那就更好了。

這可能嗎? 該行本身我整理的, 我與排序結合的容器收集在真實元素:和這些東西是很難改變的。

<div id="main">
    <h3>Tasks</h3>
    <div class="container" data-bind="sortable: tasks">
        <div class="item">
            <span data-bind="visible: !$root.isTaskSelected($data)">
                <a href="#" data-bind="text: name, click: $root.selectedTask"></a>
            </span>
            <span data-bind="visibleAndSelect: $root.isTaskSelected($data)">
                <input data-bind="value: name, event: { blur: $root.clearTask }" />
            </span>  
        </div>
    </div>
    <a href="#" data-bind="click: addTask">Add Task</a>
</div>

基本的可排序JSFiddle 我希望將其置於“輸入新任務”行下方是不可能的。

您可以使用items 選項的jQuery UI的排序用於此目的。

這樣的想法是,您將一個類放在您實際上希望可排序的items ,然后使用items選項選擇它們。

此類可能來自計算。 您所計算的值可能與列表中的最后一項有關。

綁定時,它看起來像: sortable: { data: items, options: { items: '.good-items' } }

這是一個基本示例: http : //jsfiddle.net/rniemeyer/mBjHN/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM