JQuery拖放 - 如何获取被拖动的元素?

时间:2012-10-31 15:40:51

标签: jquery-ui jquery

我正在使用jQuery UI - 拖放

我的HTML是:

<head>
    <title></title>
    <script type="text/javascript" src="jquery-1.4.2.min.js"></script>
    <script type="text/javascript" src="jquery-ui-1.8.custom.min.js"></script>
    <link rel="stylesheet" type="text/css" href="style.css" media="screen" />
    <script type="text/javascript">
        $(document).ready(function () {
            $("#example-1-2 .sortable-list").sortable({ connectWith: '#example-1-2 .sortable-list', opacity: 0.6, cursor: 'move' });
        });
    </script>
</head>
<body>
    <div id="example-1-2">
                <div id="Div2" class="column left first">
                    <ul id="leftlist" class="sortable-list">
                        <li class="sortable-item">Item1</li>
                        <li class="sortable-item">Item2</li>
                        <li class="sortable-item">Item3</li>
                    </ul>
                </div>
                <div class="column left">
                    <ul id="rightlist" class="sortable-list">
                        <li class="sortable-item">Item4</li>
                        <li class="sortable-item">Item5</li>
                        <li class="sortable-item">Item6</li>
                    </ul>
                </div>
            </div>
</body>
</html>

让我们看看我是否从"item5"选择了rightlist,然后选择了leftlist

我想在我的$ jquery Ajax方法中获取item5

我如何得到这个?

我试过的是:

但是使用这个[var order = $(this).sortable(“toArray”);]我得到了所有元素,但我想要一个被拖动的元素

$("#leftlist,#rightlist").sortable({
                update: function (event, ui) {
                    var order = $(this).sortable("toArray");
                    $.ajax(
                     {
                        type: "POST",
                        url: "WebForm3.aspx/LeftSideData",
                        data: "{'newdata': '" + order + "'}",
                        dataType: "json",
                        contentType: "application/json",
                     });
                }

            });

1 个答案:

答案 0 :(得分:0)

艾伦 - 试着看:

ui.item

根据jQueryUI可排序API文档,'item':“表示当前拖动元素的jQuery对象”

您是否确定不想使用“可拖动”,因为您要从一个列表拖放到另一个列表?您可以使用Draggable的connectToSortable作为API doc说明:“允许将draggable拖放到指定的sortables上。”

通过API文档:

$( ".selector" ).draggable({ connectToSortable: "#my-sortable" });