Jquery ui 在jQuery UI可排序之后,敲除foreach绑定不起作用
我有一堆行,它们通过foreach绑定进行更新。我还有一个自定义的敲除绑定(基于jQueryUISortable),它允许通过拖放对这些行重新排序Jquery ui 在jQuery UI可排序之后,敲除foreach绑定不起作用,jquery-ui,knockout.js,jquery-ui-sortable,Jquery Ui,Knockout.js,Jquery Ui Sortable,我有一堆行,它们通过foreach绑定进行更新。我还有一个自定义的敲除绑定(基于jQueryUISortable),它允许通过拖放对这些行重新排序 <tbody data-bind="foreach: serviceTemplates, draggableList: null"> <tr>...</tr> </tbody> ko.bindingHandlers.draggableList = { init: function (eleme
<tbody data-bind="foreach: serviceTemplates, draggableList: null">
<tr>...</tr>
</tbody>
ko.bindingHandlers.draggableList = {
init: function (element, valueAccessor, allBindings, viewModel, bindingContext) {
var panelList = $(element);
panelList.sortable();
}
};
...
ko.bindingHandlers.draggableList={
init:函数(元素、valueAccessor、allBindings、viewModel、bindingContext){
变量panelList=$(元素);
小组成员。可排序();
}
};
行可以被删除。只有在我不移动这一行的情况下,它才会起作用。我不明白为什么。jQueryUI是否在移动DOM元素时删除和添加它
试试看。您所要做的就是在项目中包含knockout sortable.js
文件,并将foreach
替换为sortable
<tbody data-bind="sortable: serviceTemplates, draggableList: null">
<tr>...</tr>
</tbody>
...
你应该使用该插件,而不是编写自己的插件……如果你还没有看到,这是一篇关于使用sortable with knockout的经典博文