有没有一种简单的方法可以只对 HTML 中多列表级别的外部级别进行排序?(对列表的内部级别进行排序并不重要)如果可能的话只是 javascript 代码,没有 jQuery,因为我从未使用过它。
示例:排序前
列表 Z
- 凯蒂
- 德拉
清单 G
- 测试
- 狐狸
列表 R
- 美国广播公司
- AAC
排序后:
清单 G
- 测试
- 狐狸
列表 R
- 美国广播公司
- AAC
列表 Z
- 凯蒂
- 德拉
提前谢谢你,迈克
使用下面回答的 Jquery 方法后,出现错误“对象不支持此属性或方法??
更新:这是代码示例:
<head>
<script LANGUAGE="JavaScript" SRC="./js/jquery-1.7.2.js"></SCRIPT>
<script type="text/javascript">
function sortDesc()
{
$('ul.list > li').sortElements(function(a, b){
return $(a).text() > $(b).text() ? 1 : -1;});
}
</script>
</head>
<body>
<div id="container">
<div id="main">
<div class="c1">
<div id="example-list">
<table cellspacing="0" cellpadding="0" border="0" width="100%">
<tr>
<td align="middle" align="center" title='sort' style="cursor:pointer" valign="middle" align="center" style="width:20px; height:20px;">
<img border="0" src="./js/r_oinfo.gif" width="20" height="20" onclick="sortDesc()">
</td>
</table>
<ul class="list">
<li>
Search
</li>
<ul>
<li>
se 1
</li>
<li>
se 2
</li>
<li>
se 0
</li>
</ul>
<li>
Sort
</li>
<ul>
<li>
so 1
</li>
<li>
so 0
</li>
</ul>
<li>
Filter
</li>
</ul>
</div>
</div>
</div>
</div>
</body>
</html>