我的问题与我在Stack Overflow上发现的其他一些问题非常相似,但不完全相同。
我的简单列表如下:
<div id="preview" style="border: 1px solid #000;">
<ul>
<li style="list-style: none; display: none;" id="list1" class="ui-state-default">
<input type="radio" name="answer" id="answer1" value="a" />
<label for="answer1" id="displayAnswer1"></label>
</li>
<li style="list-style: none; display: none;" id="list2" class="ui-state-default">
<input type="radio" name="answer" id="answer2" value="b" />
<label for="answer2" id="displayAnswer2"></label>
</li>
<li style="list-style: none; display: none;" id="list3" class="ui-state-default">
<input type="radio" name="answer" id="answer3" value="c" />
<label for="answer3" id="displayAnswer3"></label>
</li>
</ul>
</div>
在名为'id'
的变量中,值可以按随机顺序排列,
例如:id的第一个值可能是3,那么具有list3
id的li必须位于列表视图的第一个位置,然后id值可能是2,那么具有list2
id的li必须位于第二个位置列表视图,然后最后的id值可能是1,那么具有list1
id的li必须进入列表视图的第三个位置。
我搜索了很多,但是所有这些都是按字母顺序或其他类似的值排序,并且它们没有解决我的问题。
Thanx !!
答案 0 :(得分:3)
var ids = [3, 1, 2];
var items = $("#preview li").remove();
$.each(ids, function(index, id) {
$(items).filter("li[id='list" + ids[index] + "']")
.appendTo($("#preview ul"));
});
请参阅jsFiddle。