我们有一张表格显示团队排名。
现在我们正在使用jQuery基于点进行排序 - > " PTS" 然而,在这种情况下,有些情况如上图中点数相等(如最后两个团队),看看谁应该先行,我们必须看看F栏,在这种情况下"迪拜种马"应该超过" Abu Dhabi Capitals"。
我们的代码目前是这样的:
<script type="text/javascript">
$(document).ready(function(){
$('div.standing table>tbody > tr:not(:first-child)').sort(function (a, b) {
return +$('td:eq(5)', b).text() > +$('td:eq(5)', a).text();
}).appendTo('tbody');
});
</script>
我们有桌子
<div class="standing">
<table class="uppercased">
<tr>
<th style="width:26%">teams</th>
<th style="width:6%">gp</th>
<th style="width:6%">w</th>
<th style="width:6%">l</th>
<th style="width:6%">t</th>
<th style="width:6%">pts</th>
<th style="width:6%">f</th>
<th style="width:6%">a</th>
<th style="width:8%">Standing</th>
<th style="width:8%">strk</th>
</tr>
与下面类似。 任何人都可以帮助调整jQuery吗?
网址:https://www.eafl.ae/standing?division=varsity
感谢。
答案 0 :(得分:2)
您可以执行if
条件。如果点相等,请使用 f 列进行排序。
这是一个片段。
$(function() {
$('div.standing table>tbody > tr:not(:first-child)').sort(function(a, b) {
if (+$('td:eq(5)', b).text() != +$('td:eq(5)', a).text()) // Check if PTS column is not equal
return +$('td:eq(5)', b).text() > +$('td:eq(5)', a).text(); // Use PTS column since they are not equal
else
return +$('td:eq(6)', b).text() > +$('td:eq(6)', a).text(); // Sincne PTS column are equal, use the f column
}).appendTo('tbody');
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div class="standing">
<table class="uppercased">
<tr>
<th style="width:26%">teams</th>
<th style="width:6%">gp</th>
<th style="width:6%">w</th>
<th style="width:6%">l</th>
<th style="width:6%">t</th>
<th style="width:6%">pts</th>
<th style="width:6%">f</th>
<th style="width:6%">a</th>
<th style="width:8%">Standing</th>
<th style="width:8%">strk</th>
</tr>
<tr>
<td style="width:26%">Team 1</td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%">3</td>
<td style="width:6%">7</td>
<td style="width:6%"></td>
<td style="width:8%"></td>
<td style="width:8%"></td>
</tr>
<tr>
<td style="width:26%">Team 1</td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%">12</td>
<td style="width:6%">86</td>
<td style="width:6%"></td>
<td style="width:8%"></td>
<td style="width:8%"></td>
</tr>
<tr>
<td style="width:26%">Team 1</td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%"></td>
<td style="width:6%">3</td>
<td style="width:6%">33</td>
<td style="width:6%"></td>
<td style="width:8%"></td>
<td style="width:8%"></td>
</tr>
</table>
</div>