表分类不按预期工作

问题描述:

我有这段代码尝试按最低价格到最高价格对表进行排序(该表由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'); 

然而,我有这个问题这种情况持续发生

table rows broken

正如你可以看到这是坏了。空白行确实有一些文字,并且位于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> 

这是一个具有合并单元格表行之一(我已经把合并单元格6在过滤器)

感谢 山姆

与工作是什么你已经有了,添加一个过滤器,并用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'); 
+0

嘿那里,这没有做任何不同的:)。谢谢山姆 –

+0

等待错过了fikter,稍后将尝试这个,看看我得到的回报 –

+0

注意:我展示的过滤器是基于你原来的问题猜测你的标记。您可能需要将'find()'中的表达式更改为如下形式:'find('td [colspan =“6”]')' – searlea