Я также работаю с форумами Google на форумах нокаутов, но я полагаю, что большая аудитория никогда не сможет повредить ситуацию.
Я пытаюсь заставить KO работать с ситуацией, используя jQuery UI 'Sortable' plugin. У меня есть мой код, размещенный здесь.
Попытка использования пользовательской привязки...
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 получает элемент, он может получить элемент и добавить его к другому наблюдаемому массиву.
Это не работает для меня. У меня возникли трудности с тем, чтобы запустить событие, как я этого хочу. Как я его настроил, он срабатывает, но он возвращает только значение "истина/ложь". Я надеялся, что кто-то другой может иметь представление о том, что я делаю неправильно, и знаю, как это исправить.
(для использования кода вам необходимо указать
<link href="#" onclick="location.href='http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.6/themes/base/jquery-ui.css'; return false;" 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