knockout.js - 在 knockout 中禁用单个项目

标签 knockout.js knockout-sortable

在 knockout 排序中,我知道您可以在 sortable 绑定(bind)中使用 isEnabled 禁用可排序列表。我还知道您可以在 beforeMove 函数中使用 cancelDrop 禁用移动项目。问题是,isEnabled 禁用了整个列表,并且 cancelDrop 只能在项目已经被拖放到另一个 sortable 上后调用。

有没有办法在某些包含的项目上禁用 sortable 的单击/拖动行为?

最佳答案

您可以为此目的使用 jQuery UI 可排序选项 itemscancel。此处的文档:http://jqueryui.com/sortable/#items .

您可以将它们添加到如下绑定(bind)中:

<div class="container" data-bind="sortable: { data: tasks, options: { cancel: '.prevent' } }">

或全局喜欢:

ko.bindingHandlers.sortable.options.cancel = ".prevent";

此处的示例:http://jsfiddle.net/rniemeyer/2wEX3/

关于knockout.js - 在 knockout 中禁用单个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14611775/

相关文章:

javascript - knockout 可拖动可排序映射克隆更改

knockout.js - KnockoutJS css 绑定(bind)!= true

javascript - knockout JS : Checking if items in nested sortable were reordered

javascript - 可 knockout 排序的嵌套项目无法拖动到无子元素中

javascript - Typescript:如何为外部方法创建 'lambda function call'?

jquery - 如何使用 jQuery UI 可排序消除闪烁?

javascript - knockout 排序 'dragged' 回调不起作用

javascript - 当可观察数组中的对象的属性更新时,如何使可观察数组通知其依赖项?

javascript - knockout.js 中的事件处理程序模型更改

checkbox - knockout js : Bind checkbox enable when boolean is false