我有一个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)。
谢谢您的帮助!
我正在尝试更新序号以触发可观察到的淘汰来检测更改。没有成功。
1条答案
按热度按时间nr9pn0ug1#
你应该在onUpdate事件之后对你的observableArray中的元素进行排序。然后KnockoutJS会自动重新排列DOM中的部分。