Pergunta

Este é o meu código para um arrastável conectado a um classificáveis. A coisa é, eu estou criando uma LI com um monte de atributos. Mas quando eu arrastar um item para o div droppable, o classificáveis ??cria uma nova tag li e envolve minha li criado com ele.

Parece algo como isto:

<ul>
<li class="ui-draggable" style="display: list-item;">
    <li class="X" onclick="myFunc()"> My LI</li>
<li>
</ul>

Embora a minha intenção é ter algo como isto:

<ul>
    <li class="X" onclick="myFunc()"> My LI</li>
</ul>

Então, como posso fazer isso?

E o código:

$(document).ready(function() {

$('.draggable_text > li').draggable({
    helper: function(event, ui) {
        return '<div class="placeholder_sortable">&nbsp</div>'
    },
    connectToSortable:'#stagerows'
});

$('#stagerows').sortable({
    handle: '.drag_handle',
    placeholder: 'placeholder_sortable'
});

/**
 * When item is dropped from the Add <Stuff>
 */
$('#stagerows').droppable({
    drop: function(event, ui){
        return ui.draggable.html('<li class="X" onclick="myFunc()"> My LI</li>')
    }
});

});
Foi útil?

Solução

Tente usar o seguinte:

$('#stagerows').droppable({
    drop: function(event, ui){
        return ui.draggable.html('My LI').addClass('X').click( myFunc );
    }
});
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top