如何防止将一个列表中的项目放入另一个嵌套ul jquery可排序?

时间:2013-03-12 08:43:43

标签: jquery html css html5

我有嵌套列表,每个列表都有一个唯一的ID。我想知道如何阻止父 - 父列表项放入<div>内部已经包含<li> <div>列表的内部<ul> <li>。此外,占位符也出现在那里。我想知道是否有办法强制属于第一个列表的项目保持在那里,即使它们移动到主要全局列表中的项目的另一个嵌套列表之上。

提前致谢。

jQuery的:

 $(document).ready(function () {
             $('ul#main-sections').sortable({
                 connectWith: 'ul#main-sections', 
                 items: 'li:not(:last-child)',
                 placeholder: 'placeholder',
                 forcePlaceholderSize: true,
                 start: function (e, ui) {
                     var elementHeight = ui.item.height();
                     ui.placeholder.height(elementHeight);
                 }
             });
         });

以下是我的http://jsfiddle.net/wt4N8/1/ &lt; - 拖动书籍摘要部分,您会看到

2 个答案:

答案 0 :(得分:1)

简单地澄清你的jQuery选择器:

items: '>li:not(:last-child)',

它只会选择第一级子元素

http://jsfiddle.net/wt4N8/2/

这是你在找什么?

P.S。以下是您可以安排图书和摘要部分的方法:http://jsfiddle.net/wt4N8/3/

答案 1 :(得分:0)

使所有嵌套列表和父列表可排序,然后设置

items: '>li'

这将解决问题。它对我有用。