Javascript 如何定制';按'排序;在HTML表格中?

Javascript 如何定制';按'排序;在HTML表格中?,javascript,html,Javascript,Html,我是Stackoverflow的新手!我来到这里需要一些帮助,作为一个初学者,这个社区真的帮助了我编程,我仍然是一个 我想知道如何按自定义顺序对表进行排序,如本网站: 我之所以喜欢那个网站,是因为我也在制作一个传奇联盟的表格,但是只有角色和等级 这样做(已经很好地评论了): 函数排序表(){ var表,行,切换,i,x,y,shouldSwitch; table=document.getElementById(“myTable”); 切换=真; /*做一个循环,循环将持续到 未进行任何切换

我是Stackoverflow的新手!我来到这里需要一些帮助,作为一个初学者,这个社区真的帮助了我编程,我仍然是一个

我想知道如何按自定义顺序对表进行排序,如本网站:

我之所以喜欢那个网站,是因为我也在制作一个传奇联盟的表格,但是只有角色和等级

这样做(已经很好地评论了):

函数排序表(){
var表,行,切换,i,x,y,shouldSwitch;
table=document.getElementById(“myTable”);
切换=真;
/*做一个循环,循环将持续到
未进行任何切换:*/
while(切换){
//首先说:未进行任何切换:
切换=错误;
行=表。行;
/*循环遍历所有表行(除
首先,它包含表标题):*/
对于(i=1;i<(rows.length-1);i++){
//首先说,不应进行切换:
shouldSwitch=false;
/*获取要比较的两个元素,
一个来自当前行,另一个来自下一行:*/
x=行[i].getElementsByTagName(“TD”)[0];
y=行[i+1].getElementsByTagName(“TD”)[0];
//检查两行是否应切换位置:
if(x.innerHTML.toLowerCase()>y.innerHTML.toLowerCase()){
//如果是,标记为开关并断开回路:
shouldSwitch=true;
打破
}
}
如果(应切换){
/*如果开关已被标记,则进行更换
并标记开关已完成:*/
行[i].parentNode.insertBefore(行[i+1],行[i]);
切换=真;
}
}
}
基本上,根据表的值切换两行,直到完成所有操作


另外,这是一个很好的答案,提供了一个全面的好答案

您可以使用JavaScript从头开始编写代码,或者使用如下插件:

您有多少使用JavaScript的经验?你可以在vanilla JS或任何流行的框架或库(如jquery或react)中实现这一点,但如果我们不知道你对JS的熟悉程度,这是一个有点模糊的问题。我真的不了解JS,高中时才刚刚开始:p然后使用已经存在的解决方案最好,比如G.Farin的答案中的datatables,或引导表。