我试图在内容中按一个数字来命令一些div。我用了这段代码:
jQuery("#Overzicht > div").sort(function(a, b) {
var upA = jQuery('.distance-order', a).text().toUpperCase();
var upB = jQuery('.distance-order', b).text().toUpperCase();
return upA < upB; }).appendTo('#Overzicht');
我在这个项目中找到了这个代码: How to sort nested divs depending upon content
但是我在将数字排序(带小数)时遇到问题。你可以在这里找到整个设置: http://jsfiddle.net/84GRA/
答案 0 :(得分:1)
您在一个不会做任何事情的号码上使用了toUpperCase()
。要检查数字之间的比较,您需要先使用parseFloat()
答案 1 :(得分:0)
使用:
jQuery("#Overzicht > div").sort(function(a, b) {
var upA = parseFloat(jQuery('.distance-order', a).text());
var upB = parseFloat(jQuery('.distance-order', b).text());
return upB - upA;
}).appendTo('#Overzicht');
这会将toUpperCase
替换为parseFloat
和returns a proper value from the sort function。
如果您想要向另一个方向排序,只需切换upA
和upB
:
return upA - upB;