重新排序jQuery "sortable"问题

Reordering li elements for jQuery "sortable" problem

本文关键字:quot sortable 问题 jQuery 新排序 排序      更新时间:2023-09-26

我已经使用jQuery UI的可排序功能构建了一个可排序的列表,除了我需要能够在开始时根据包含元素的顺序的字符串重新排序<li>,但我无法找出语法如何用JavaScript做到这一点。

假设我有以下内容:

<ul>
   <li id="A" >Apple</li>
   <li id="B" >Banana</li>
   <li id="C" >Carrot</li>
</ul>

和字符串"C,A,B"

我想有一个JavaScript函数来重新排序我的项目里面的基础上的顺序的字符串的顺序。以这样结束:

 <ul>
   <li id="C" >Carrot</li>
   <li id="A" >Apple</li>
   <li id="B" >Banana</li>
</ul>

我将很自然地将字符串拆分为",",并以元素Id的数组结束,但我不确定这两个主要的事情。

1)什么是最好的方式来获得指定Id在我的分割字符串数组中找到的元素?

2)一旦我得到了该元素并确定它是正确的元素,那么将它们按正确顺序排列的语法或最佳策略是什么?

这应该回答(1)和(2)。

您可以在,分隔符上拆分字符串以获得数组,然后通过改变li元素的顺序进行循环。

var order = 'C,A,B'.split(','),
    ul = $('ul');
$.each(order, function(index, sort) {
    $('#' + sort).appendTo(ul);
});

jsFiddle .