You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用jQuery按td.points单元格值从高到低重排表格行

jQuery实现表格按积分列降序排序

直接用下面的代码即可实现需求,已经兼容你给出的表格结构:

$(document).ready(function() {
    const $tableBody = $('#livescoring_summary tbody');
    // 排除第一行表头,提取所有需要排序的数据行
    const dataRows = $tableBody.children('tr:not(:first)').get();

    // 按points列数值降序排序
    dataRows.sort(function(rowA, rowB) {
        const scoreA = parseFloat($(rowA).find('.points').text().trim());
        const scoreB = parseFloat($(rowB).find('.points').text().trim());
        return scoreB - scoreA;
    });

    // 把排序后的行重新插入tbody
    $tableBody.append(dataRows);

    // 可选:修复排序后奇偶行样式错乱的问题
    $tableBody.children('tr:not(:first)').each(function(i) {
        $(this).removeClass('eventablerow oddtablerow')
               .addClass(i % 2 === 0 ? 'eventablerow' : 'oddtablerow');
    });
});

代码说明

  • 第一行的"Week 1"标题行不会参与排序,始终固定在表格最顶部
  • 提取points值时做了parseFloat转换,避免字符串排序出现的逻辑错误(比如字符串对比下"61.000"会大于"61.875"的问题)
  • 排序后重新插入行用了jQuery的append方法,原有行会被自动移动,不会产生重复元素
  • 如果不需要保留原有的奇偶行背景样式,可以删掉最后修复样式的那段代码

内容的提问来源于stack exchange,提问作者MShack

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 05:12:02