jQuery的。按字母顺序排列名称列表

时间:2011-02-28 09:51:56

标签: jquery

我在页面上有一个名字列表(名字和姓氏)。我希望用户能够使用jQuery(或普通的javascript)在firstname或lastname上对此列表进行排序。怎么办呢?

<ul>
<li>Michael Scott</li>
<li>Jonathan Torry</li>
</ul>

非常感谢所有投入!

2 个答案:

答案 0 :(得分:4)

Array.sort()就是你需要的

var items = [];
$('ul li').each(function(){
   items.push($(this).html());
})
items.sort();

此处示例:http://jsfiddle.net/jomanlk/7UzNZ/

答案 1 :(得分:-1)

试试我的插件http://www.athos99.com/listorder/type.html

要订购拳头名和姓氏,请更改您的列表:

<ul id="ul1">
<li><span>Michael</span> <span>Scott</span></li>
<li><span>Jonathan</span> <span>Torry</span></li>
</ul>

按名字排序

 $('#ul1').listorder( { child:'li', childValue:function(){return $(this.children([0]).text();} });

按姓氏排序

 $('#ul1').listorder( { child:'li', childValue:function(){return $(this.children([1]).text();} });


$(this.children([0])   select the 1st span
$(this.children([1])   select the 2nd span