12 Stimmen

jQuery Sortable - Behalten Sie es in der ursprünglichen Liste

Weiß jemand, ob jQuery UI's Sortable hat eingebaute Funktionalität, um die ursprüngliche fallen gelassen Element in seiner ursprünglichen Liste zu halten?

Sie haben zum Beispiel zwei Listen (eine "Quelle" und eine "Gruppe"). Ich möchte aus der Quelle auswählen und in der Gruppe ablegen, aber das Element in der Quelle behalten.

Macht das Sinn?

Ich danke Ihnen!

27voto

David Spence Punkte 7849

Sie können Sehen Sie meine Lösung in Aktion auf jsfiddle . Ich habe einfach geändert diese jQuery-Interaktion zum Ziehen/Ablegen auf Ihre Bedürfnisse abgestimmt.

HTML

<div class="demo">
    <h2>List 1</h2>
    <ul>
        <li class="draggable ui-state-highlight">Drag me down</li>
        <li class="draggable ui-state-highlight">Drag me down</li>
    </ul>
    <h2>List 2</h2>
    <ul id="sortable">
        <li class="ui-state-default">Item 1</li>
        <li class="ui-state-default">Item 2</li>
        <li class="ui-state-default">Item 3</li>
        <li class="ui-state-default">Item 4</li>
        <li class="ui-state-default">Item 5</li>
    </ul>
</div>

jQuery

$(function() {
    $("#sortable").sortable({
        revert: true
    });
    $(".draggable").draggable({
        connectToSortable: "#sortable",
        helper: "clone",
        revert: "invalid"
    });
    $("ul, li").disableSelection();
});

CSS

.demo ul { list-style-type: none; margin: 0; padding: 0; margin-bottom: 20px; }
.demo li { margin: 5px; padding: 5px; width: 150px; border: 1px solid black; }

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X