2012-03-06 26 views
5

Estoy codificando un panel de tareas con tres listas y uso sortable para mover el elemento entre ellas. Pero necesito recoger el artículo donde se suelta el elemento. Sé que ui.item es el elemento eliminado, pero no sé dónde lo solté. Aquí está mi código:Obtiene el elemento/objeto donde se coloca el elemento

$(".column").sortable({ 
    receive: function(event, ui) { 
     /* get the element where ui.item is dropped */ 
    } 
}); 

sé que el elemento será ninguna con el selector .column, pero la forma de elegir !!!

+0

posible duplicado de [¿Hay alguna manera inteligente de obtener el objetivo ordenable en jQueryUI] (http://stackoverflow.com/questions/4420311/is-there-a-clever-way-of-getting-the-sortable-target -in-jqueryui) – isherwood

Respuesta

4

muy simple:

alert($(this).attr('id')); //this is element where the item was dropped in 
+0

Esto parece ser correcto. Ver http://stackoverflow.com/questions/4420311/is-there-a-clever-way-of-getting-the-sortable-target-in-jqueryui. – isherwood

+0

Esta es una pregunta bastante antigua, pero en mi caso yo estaba buscando esto y finalmente lo hice :). Gracias – javimaravillas

+0

en realidad, $ (este) es el elemento del que se arrastró el elemento, no el que se ha soltado en ... – Mark

6

EDITAR - una manera de hacerlo es como esto

$("#sortable1, #sortable2").sortable({ 
    connectWith: ".connectedSortable", 
    receive: function(e, ui) { 
     alert(ui.item.closest('ul').attr('id')); 

    } 
}).disableSelection(); 

Por supuesto, si quieres probar para obtener el siguiente elemento a elemento caído que haría

ui.item.closest('ul') 

violín aquí http://jsfiddle.net/dKaYM/

+0

Si quiero deslizar la posición, ¿qué debo agregar? – Bhavik

Cuestiones relacionadas