当拖放重新排列列表时,使用jQuery SortableJS敲除保存重新排序

kulphzqa  于 9个月前  发布在  jQuery
关注(0)|答案(1)|浏览(116)

我有一个knockout应用程序,其中有一个knockout servablearray的div列表。当我将一个项目移动到一个新位置后,我如何更新knockout servablearray以反映更改后的顺序?
var sections = document.getElementById('sectionsId');

new Sortable(sections, {
        animation: 150,
        ghostClass: 'blue-background-class',
        //onEnd: function (event) {

        //}
        onUpdate: function (evt) {
            [].forEach.call(evt.from.getElementsByClassName('section-list'), function (el, index)   {

                el.setAttribute("ordinal", index);
            });
        }
    });

字符串
我的knockout类有Sections:KnockoutObservableArray = ko.observableArray([]);,它绑定到div列表(sections)。
谢谢您的帮助!
我正在尝试更新序号以触发可观察到的淘汰来检测更改。没有成功。

nr9pn0ug

nr9pn0ug1#

你应该在onUpdate事件之后对你的observableArray中的元素进行排序。然后KnockoutJS会自动重新排列DOM中的部分。

相关问题