一种选择是添加一个与and绑定droppable
很好的绑定。有几种方法可以做到这一点,但这是一种将处理程序传递给 droppable 的方法,它调用将新项目作为第一个参数传递的处理程序。sortable
draggable
ko.bindingHandlers.droppable = {
init: function(element, valueAccessor) {
var dropHandler = valueAccessor() || {};
$(element).droppable({
drop: function(event, ui) {
var item = ko.utils.domData.get(ui.draggable[0], "ko_dragItem");
if (item) {
item = item.clone ? item.clone() : item;
dropHandler.call(this, item, event, ui);
}
}
});
}
};
然后,您可以像这样绑定它:
<div id="main" data-bind="droppable: addTask">
通过addTask
推送到您的 observbaleArray。
示例:http: //jsfiddle.net/rniemeyer/3JBnh/