7

Tengo alguna lista ordenable conectada, que es al mismo tiempo lugares que se pueden quitar. El problema es que cuando llamo al método cancel de ordenable en el evento drop de drop, el clasificador se rompe y ya no funciona. Ejemplo http://jsfiddle.net/zSnBA/10/ intente mover el número div 102 en la segunda lista: verá que se llamará al evento cancel pero ¿ya no funcionará? ¿Alguna ayuda?

Respuesta

6

Yo recomendaría no hacer la lista se puede ordenar que pueden arrastrarse también, pero escuchar el caso receive en sortable de cancelar el evento:

$('div.products-list').sortable({ 
    connectWith: '.products-list', 
    placeholder: 'ui-state-highlight', 
    items: 'div.product', 
    revert: 200, 
    receive: function(event, ui) { 
     var prod_id = ui.item.attr("prod_id"); 

     /* Equal to 1 is valid because an item was just added to the list: */ 
     if ($(this).find(".product[prod_id='" + prod_id + "']").length > 1) { 
      ui.sender.sortable("cancel"); 
     } 
    } 
}); 

Ejemplo:http://jsfiddle.net/z5X5y/

+1

He intentado esto, pero yo no puedo usarlo porque la recepción se activa solo cuando un elemento se mueve de una lista a otra. Necesito que se active siempre – albanx

+0

@albanx: ¿Entonces necesita que se dispare cuando un elemento se mueve dentro de la lista en la que se encuentra actualmente? –

+0

funcionan a la perfección, gracias hombre – Mimouni

Cuestiones relacionadas