Как я могу найти новый div id элемента, перемещаемого с помощью сортировки Jquery? - PullRequest
2 голосов
/ 13 июля 2011

Я хочу знать новую позицию (div id) элемента, который я только что переместил

Как я могу это сделать?

http://jqueryui.com/demos/sortable/#empty-lists

<script>
    $(function() {

        $("#sortable").sortable({
    update: function(event, ui) {
        alert("New position: " + ui.item.index());
    }
});

        $( "ul.droptrue" ).sortable({
            connectWith: "ul"
        });

        $( "ul.dropfalse" ).sortable({
            connectWith: "ul",
            dropOnEmpty: false
        });

        $( "#sortable1, #sortable2, #sortable3" ).disableSelection();
    });
    </script>


<ul id="sortable1" class='droptrue'>
    <li class="ui-state-default">Can be dropped..</li>
    <li class="ui-state-default">..on an empty list</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>

<ul id="sortable2" class='dropfalse'>
    <li class="ui-state-highlight">Cannot be dropped..</li>
    <li class="ui-state-highlight">..on an empty list</li>
    <li class="ui-state-highlight">Item 3</li>
    <li class="ui-state-highlight">Item 4</li>
    <li class="ui-state-highlight">Item 5</li>
</ul>

<ul id="sortable3" class='droptrue'>
</ul>

Ответы [ 2 ]

0 голосов
/ 13 июля 2011

Ваш код работает отлично (см. эту скрипку ), когда вы вызываете sortable() для элемента, который действительно существует на странице:

$("#sortable2").sortable({
    update: function(event, ui) {
        alert("New position: " + ui.item.index());
    }
});
0 голосов
/ 13 июля 2011

При обратном вызове вы можете использовать event.pageX и event.pageY, чтобы определить смещение относительно страницы.

...