Pregunta

Estoy trabajando con la Google Grupos en los foros de Knockout en busca de ayuda con esto también -. Pero creo que una audiencia más grande que nunca puede hacer daño a la situación

Estoy tratando de conseguir KO al trabajo con una situación utilizando jQuery UI de plug-in 'Sortable'. Tengo mi código publicado aquí.

http://www.pastie.org/1285716

El intento de utilizar un enlace personalizado ...

        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();
            }
        };

El objetivo es que cuando la clasificación ordenada recibe un artículo, se puede conseguir el artículo y añadirlo a la otra observableArray.

Esto no es del todo funcionando para mí, sin embargo. Estoy teniendo dificultades para conseguir el evento de fuego como lo quiero. La forma en que tengo configurado, lo hace el fuego, pero sólo devuelve un valor 'verdadero / falso'. Tenía la esperanza de que alguien pueda tener una idea de lo que estoy haciendo mal y saber cómo solucionarlo.

(para usar el código, es necesario referencia

<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>

en la parte superior, y luego la nueva versión de Knockout (1.1.1)

http://cloud.github.com/ descargas / SteveSanderson / nocaut / nocaut-1.1.1.debug.js

¿Fue útil?

Solución

No se dio cuenta de Steve ya había respondido a esta antes de que hubiera terminado. Aquí tiene, aunque manera, ligeramente diferente a él.

Sortable hace esto mucho más difícil, esto habría sido mucho más fácil con un arrastrar y soltar de unión unido a cada producto. El problema con sortable es que son vinculantes para toda la lista en lugar de los artículos.

http://www.pastie.org/1432093

Otros consejos

Me reelaborado la muestra y venía con una bindingHandler casi completa, que no requiere un atributo id y también mangos de reordenamiento. Aquí está el código:

http://jsbin.com/knockoutsortable/20/edit

uso:

  • Se trata de utilizar la template.foreach vinculante para averiguar cuál es la matriz asociada en el modelo de vista.

  • Se puede utilizar databind = "foreach: los productos, se puede ordenar: true". Para habilitar la clasificación dentro de una única matriz sin opciones

  • Está funcionando con observableArray objetos.

  • Se puede ordenar la construcción de jQuery por sí mismo, puede pasar las mismas opciones de objeto en la unión que en el constructor jQuery.sortable.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top