jquery可排序项目问题

时间:2009-12-11 21:42:16

标签: jquery jquery-ui jquery-ui-sortable

给定以下结构,可以对包含可排序列表的div进行排序吗?我问,因为使用最新的jquery 1.3版本,它不允许对div进行排序。 jQuery是否有任何限制,它不能对包含已经可排序列表的父元素进行排序,或者是因为父元素是div而不是LI元素?任何人的想法?

<div class="row">
<ul class="sortable">
<li>test1</li>
<li>test2</li>
</ul>
</div>
<div class="row">
<ul class="sortable">
<li>test1</li>
<li>test2</li>
</ul>
</div>
<div class="row">
<ul class="sortable">
<li>test1</li>
<li>test2</li>
</ul>
</div>

1 个答案:

答案 0 :(得分:2)

我想有一个误会

此命令

$('div.row').sortable()

实际上会使div中的ul s可排序。这没有意义,因为每个div中只有一个ul并且排序单个元素没有意义。 (演示页面:http://jsbin.com/ayiwu


如果您想对div(不是ulli)进行排序,可以使用此行

$("div.row").wrapAll("<div></div>").eq(0).parent().sortable();

现在div本身是可排序的(演示页面:http://jsbin.com/upixa


如果你想要div和** li ** s(而不是ul s只有一个ul时没有意义每div)可以同时排序

$("div.row").wrapAll("<div></div>").eq(0).parent().sortable();
$("div.row").sortable({ items: "li" });

演示页:http://jsbin.com/ujatu

如果您还想要其他内容,请发表评论

P.S。:对于演示页面上可怕的CSS感到抱歉。为了清楚起见,您可以看到您点击了哪个元素