1

我的问题与我在 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>

在变量named'id'中,值可能是随机顺序,
例如:id的第一个值可能是3,那么有list3id的li必须在列表视图的第一个位置,那么id的值可能是2,然后有list2id的li必须进来列表视图的第二个位置,那么最后 id 值可能是 1,那么具有list1id 的 li 必须位于列表视图的第三个位置。

我搜索了很多,但所有这些都是按字母顺序或其他类似的值排序的,它们并没有解决我的问题。

谢谢!!

4

1 回答 1

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

​</p>

于 2012-08-19T07:27:50.470 回答