Javascript 更改类似表的项目顺序

Javascript 更改类似表的项目顺序,javascript,jquery,html-table,markup,Javascript,Jquery,Html Table,Markup,我有一组divs表(带有行和列),用于显示足球表。现在,我需要能够根据选择的键对该表进行排序,而无需刷新页面和避免使用ajax 更具体地说,我需要捕获每个“列”中的值,并将其重定向到所选的键,然后对表重新排序 我使用jQuery,因此工作应该相当简单,只是不确定如何使用团队id和原因中的列对数组重新排序。顺便说一下,表中的值都是数字 下面是标记(行)的示例: 本菲卡 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 有什么想法吗?假设您有一个对象数组,其中每个对象对应一

我有一组divs表(带有行和列),用于显示足球表。现在,我需要能够根据选择的键对该表进行排序,而无需刷新页面和避免使用ajax

更具体地说,我需要捕获每个“列”中的值,并将其重定向到所选的键,然后对表重新排序

我使用jQuery,因此工作应该相当简单,只是不确定如何使用团队id和原因中的列对数组重新排序。顺便说一下,表中的值都是数字

下面是标记(行)的示例:


本菲卡
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0
0

有什么想法吗?

假设您有一个对象数组,其中每个对象对应一个表行,每个对象都有对应于表列的属性

var table = [
   { rowId: 1, teamName: 'Man U', country: 'England' },
   { rowId: 2, teamName: 'FC Barcelona', country: 'Spain' }
];
现在,如果您的数据是这样排列的,您可以创建一个函数,您可以说
drawTable(table)
,它将创建您想要的HTML标记。然后可以在该变量中进行排序,如下所示:

function sortTable(table, column) {
    table.sort(function(x,y) { return x[column] > y[column]; });
    return table;
}

$('#sortByTeamName').click(function() {
   table = sortTable(table, 'teamName');
   drawTable(table);
});

你能给我们看一个HTML标记的例子吗?当然可以,但我的问题是关于用javascript重新排序数组,其余的我可以毫无问题地处理。这并不能完全回答我的问题。该表有16个团队,如何运行所有值并重新排序?有javascript函数可以做到这一点吗?是的,我为您编写了它。如果查看第二个代码块中的
table.sort
,它会根据传递给函数的任何参数对数据进行排序。如果您告诉javascript您的数据是什么样子的,这就是第一个代码块的全部内容。对不起,我没有看到这一点。我们将尝试,并在今天晚些时候或明天给出反馈。谢谢为你写了一个简短的演示我的意思:你可以粘贴到一个空白的html文件,它应该工作。sort by dob是按字母顺序排列的,如果你想要更高级的东西,你必须修改
sort
函数,关于我在出生日期所说的,排序函数不应该改变以适应这一点。var表中的数据应该是一个实际日期,而不是一个日期的字符串表示形式,排序也会自动进行。然后应更改drawTable函数以创建字符串。哦,我们有个小插曲。。。
function sortTable(table, column) {
    table.sort(function(x,y) { return x[column] > y[column]; });
    return table;
}

$('#sortByTeamName').click(function() {
   table = sortTable(table, 'teamName');
   drawTable(table);
});