根据table的不同列排序

本文介绍了一个简单的JavaScript函数,用于对网页中的表格数据进行排序。该函数可以根据不同的字段(如ID、价格、销量)以及升序或降序的方式对数据进行重新排列。通过对表格元素的操作,实现了灵活的数据展示。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

function sort(type, order) { 
    var table_tbody=document.getElementsByTagName("tbody")[0]; 
    var table_tr = table_tbody.getElementsByTagName("tr"); 
    var tempArr = [];     
    var temp_tr_arr = [];     
    var m = 0;
    
    if (type === "id") { 
        m = 0; 
    } else if (type === "price") { 
        m = 1; 
    } else if (type === "sales") { 
        m = 2; 
    }
    
    for (var i = 0; i < table_tr.length; i++) {
	    tempArr.push(table_tr[i].getElementsByTagName("td")[m].innerHTML);
    	    temp_tr_arr.push(table_tr[i].cloneNode(true));
    };

    var tr_length = table_tr.length;
    for (var x = 0; x < tr_length; x++) {
	    table_tbody.removeChild(table_tbody.getElementsByTagName("tr")[0]);
    }

    if (order === "asc") {
	    tempArr.sort(function(a, b) {
		    return a - b;
	    });
    } else if (order === "desc") {
    	tempArr.sort(function(a, b) {
    		return b - a;
    	});
    }

    for (var k = 0; k < tempArr.length; k++) {
    	for (var vv = 0; vv < temp_tr_arr.length; vv++) {
    		if (tempArr[k] == temp_tr_arr[vv].getElementsByTagName("td")[m].innerHTML) {
    			table_tbody.appendChild(temp_tr_arr[vv]);
    		}
    	}
    }
    
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值