gpt4 book ai didi

javascript - Jquery 用数字排序表数据

转载 作者:行者123 更新时间:2023-11-30 11:30:58 26 4
gpt4 key购买 nike

Jquery用数字排序表格数据

我已经按升序对这个表进行了排序,但我希望它按 a1、a2、a3、a11 的顺序排列。

有人可以帮忙吗?

function sortTable(table, order) {
var asc = order === 'asc',
tbody = table.find('tbody');
tbody.find('tr').sort(function(a, b) {
if (asc) {
return jQuery('td:first', a).text().localeCompare(jQuery('td:first', b).text());
} else {
return jQuery('td:first', b).text().localeCompare(jQuery('td:first', a).text());
}
}).appendTo(tbody);
}

sortTable($('#mytable'),'asc');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table name="mytable" id="mytable">
<tbody>
<tr><td>a 11</td></tr>
<tr><td>a 3</td></tr>
<tr><td>a 2</td></tr>
<tr><td>a 1</td></tr>
</tbody>
</table>

最佳答案

您可以将选项参数设置为 {numeric: true }

var sorted = $('#mytable tbody tr').sort(function(a, b) {
var a = $(a).find('td:first').text(), b = $(b).find('td:first').text();
return a.localeCompare(b, false, {numeric: true})
})

$('#mytable tbody').html(sorted)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table name="mytable" id="mytable">
<tbody>
<tr><td>a 11</td></tr>
<tr><td>a 3</td></tr>
<tr><td>a 2</td></tr>
<tr><td>a 1</td></tr>
</tbody>
</table>

关于javascript - Jquery 用数字排序表数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46238303/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com