【发布时间】:2011-05-08 00:00:38
【问题描述】:
我也在与 Knockout 论坛上的 Google Groups 合作寻求帮助 - 但我认为更大的受众永远不会损害这种情况。
我正在尝试让 KO 使用 jQuery UI 的“Sortable”插件来处理情况。我在这里发布了我的代码。
正在尝试使用自定义绑定...
ko.bindingHandlers.onReceiveItem = {
init: function (element, valueAccessor, allBindingsAccessor, viewModel) {
$(element).bind("sortreceive", function (event, ui) {
ko.bindingHandlers.onReceiveItem.update(element, valueAccessor, allBindingsAccessor, viewModel);
});
},
update: function (element, valueAccessor, allBindingsAccessor, viewModel) {
var value = ko.utils.unwrapObservable(valueAccessor());
var bindings = allBindingsAccessor();
}
};
目标是当Sortable List 接收到一个item 时,它可以获取该item 并将它添加到另一个observableArray 中。
不过,这对我来说不太适用。我很难让事件像我想要的那样触发。我设置它的方式,它确实会触发,但它只返回一个“真/假”值。我希望其他人可能知道我做错了什么并知道如何解决它。
(使用代码需要参考
<link href="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/themes/base/jquery-ui.css" rel="Stylesheet" />
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.3/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/jquery-ui.js"></script>
在顶部,然后是最新版本的 Knockout (1.1.1)
http://cloud.github.com/downloads/SteveSanderson/knockout/knockout-1.1.1.debug.js
【问题讨论】:
-
https://github.com/rniemeyer/knockout-sortable Knockout.js 2.0 这是一个很棒的实现。
标签: jquery jquery-ui knockout.js