在淘汰赛中禁用拖放js可排序

时间:2013-03-06 11:34:44

标签: javascript knockout.js jquery-ui-sortable

在淘汰赛中使用sortable时有没有办法禁用拖放功能。我有一个方形网格,里面有5 * 5个正方形。我想禁用一些方块的拖放而不是全部..如何做到这一点?任何建议..

1 个答案:

答案 0 :(得分:6)

jQuery UI可排序this on the demo page.

支持此功能

您只需要为非可排序项添加一个特殊类(例如使用css绑定),然后您需要使用cancel option来设置此非可排序类名。

您可以使用sortable参数指定options绑定的选项:

data-bind="sortable: {data: items, options: { cancel: '.no-sort' }}"

一个简单的演示HTML:

<ul data-bind="sortable: {data: items, options: { cancel: '.no-sort'}}">
    <li data-bind="text: name, css: { 'no-sort': disabled}"></li>
</ul>

和JS:

var vm = {
    items: [
        {name: 'name1', disabled: false},
        {name: 'name2', disabled: false},
        {name: 'name3', disabled: true},
        {name: 'name4', disabled: false},
        {name: 'name5', disabled: true}
    ]
}

ko.applyBindings(vm);

演示JSFiddle.