我有这个代码尝试按最低价格到最高价格对表格进行排序(表格由ajax填充)。
继承我的排序代码
$("#tableid tbody tr")
.detach()
.sort(function(a, b) {
var dataA1 = $(a)
.find("td:eq(5)")
.text()
.trim();
var dataB1 = $(b)
.find("td:eq(5)")
.text()
.trim();
return parseFloat(dataA1.substring(1)) - parseFloat(dataB1.substring(
1));
})
.appendTo('#tableid');
然而,我确实遇到了一个持续发生的问题
正如你所看到的,这已经破了。空白行确实包含一些文本并位于colspan 6
中。我想要的是这些是在桌子底部,结果在顶部。
任何想法如何做到这一点?
修改
<tr style="font-weight:bold">
<td>
<%= image_tag("provider-logo.png", style: "width: 140px") %>
</td>
<td colspan="6">
No Tickets Are available from provider
</td>
</tr>
这是一个有colspan的表行(我把colspan 6放在过滤器中)
由于 萨姆
答案 0 :(得分:0)
使用您已有的内容,添加过滤器,并使用prependTo
代替appendTo:
$("#tableid tbody tr")
.filter(function() { return $(this).find('td[colspan="6"]').length == 0; })
.detach()
.sort(function(a, b) {
var dataA1 = $(a)
.find("td:eq(5)")
.text()
.trim();
var dataB1 = $(b)
.find("td:eq(5)")
.text()
.trim();
return parseFloat(dataA1.substring(1)) - parseFloat(dataB1.substring(
1));
})
.prependTo('#tableid');