Knockout.js嵌套可排序绑定

时间:2013-06-27 16:18:43

标签: knockout.js knockout-sortable

我正在使用knockout.js可排序插件;但是,我遇到了一个我迄今无法解决的问题。我有两个可排序的绑定,一个用于存储桶,另一个用于bucketItems。我能够在桶之间重新排序bucketItems;但是,我无法重新排序桶。你知道为什么会这样吗?我也使用嵌套绑定,但据我所知,这不是造成问题的原因。

我非常感谢您提供的任何见解。

1 个答案:

答案 0 :(得分:8)

我不知道您的确切结构,但您可以使用connectClass选项来控制连接的可排序列表。例如,如果您这样做:

<ul data-bind="sortable: { data: buckets, connectClass: 'buckets' }">
    <li>
        <span data-bind="text: name"></span>
        <ul data-bind="sortable: { data: items, connectClass: 'items' }">
            <li data-bind="text: name"></li>
        </ul>
    </li>
</ul>

您只能在存储桶和项目中的项目中放置存储桶。该插件会自动将该类添加到父元素。

以下是一个示例:http://jsfiddle.net/rniemeyer/YaLgL/

如果您不希望能够在桶之间对项目进行排序,那么您可以为每个项目应用唯一的connectClass

http://jsfiddle.net/rniemeyer/czNe8/