简体   繁体   English

获取放置可排序元素的元素

[英]Get the element where the sortable element is dropped

I am using jquery's sortable plugin with two different lists. 我正在使用带有两个不同列表的jquery的sortable插件。 I can drop one list's item to another list. 我可以将一个列表的项目放到另一个列表中。

suppose I have two lists 假设我有两个清单

List1-:  Item1, Item2, Item3, Item4

List2-: ItemList1, ItemList2, ItemList3

When I drag item2 over ItemList2 new list will be 当我将item2拖到ItemList2上时,新列表将是

List2-: ItemList1, Item2, ItemList2, ItemList3

I want to get ItemList2 (where the Item2 was dropped). 我想获取ItemList2(将Item2放入其中)。

Here is my code 这是我的代码

<ul id="sortable1" class="connectedSortable">
    <li class="ui-state-default" id="a">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>

<ul id="sortable2" class="connectedSortable">
    <li class="ui-state-highlight">ItemList 1</li>
    <li class="ui-state-highlight">ItemList 2</li>
    <li class="ui-state-highlight">ItemList 3</li>
    <li class="ui-state-highlight">ItemList 4</li>
    <li class="ui-state-highlight">ItemList 5</li>
</ul>

and jquery 和jQuery

 $("#sortable1, #sortable2").sortable({
    connectWith: ".connectedSortable"
 }).disableSelection();

As per your sample, You can access the item next to dropped element using the next() method. 根据您的示例,您可以使用next()方法访问放置的元素旁边的项目。 Inside the receive or update callbacks, the item property of second argument refers to the element which is dropped. receiveupdate回调中,第二个参数的item属性引用被删除的元素。 You can access the next element like ui.item.next() . 您可以访问下一个元素,例如ui.item.next()

 $("#sortable1, #sortable2").sortable({ connectWith: ".connectedSortable", update: function(event, ui) { ui.item.next().addClass("selected"); } }); 
 .selected { background: red !important; } 
 <link href="http://code.jquery.com/ui/1.9.2/themes/base/jquery-ui.css" rel="stylesheet" /> <script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <script src="http://code.jquery.com/ui/1.9.2/jquery-ui.js"></script> <ul id="sortable1" class="connectedSortable"> <li class="ui-state-default" id="a">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> <ul id="sortable2" class="connectedSortable"> <li class="ui-state-highlight">ItemList 1</li> <li class="ui-state-highlight">ItemList 2</li> <li class="ui-state-highlight">ItemList 3</li> <li class="ui-state-highlight">ItemList 4</li> <li class="ui-state-highlight">ItemList 5</li> </ul> 


Side note: disableselection() is deprecated as of jqueryui 1.9 and the doc explicitly says: 旁注:从jqueryui 1.9不推荐使用disableselection () ,并且该文档明确指出:

"Disabling text selection is bad. Don't use this." “禁用文本选择是不好的。不要使用它。”

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM