首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >JQuery表排序问题

JQuery表排序问题
EN

Stack Overflow用户
提问于 2008-11-19 17:43:32
回答 6查看 28.5K关注 0票数 16

我在JQuery tablesorter插件上遇到了一些问题。如果单击列标题,应该会按该列对数据进行排序,但有几个问题:

  1. 未正确排序行(1,1,2183,236)

中包含合计行

关于(2),我不能轻易地将总行移动到表脚,因为HTML是由displaytag标记库生成的,而我对它的控制是有限的。

关于(1),我不明白为什么排序不起作用,因为我使用的JavaScript与tablesorter tutorials中最简单的示例中所示的完全相同。

实际上,只有一行JS代码,即:

代码语言:javascript
复制
<body onload="jQuery('#communityStats').tablesorter();">

提前谢谢你,唐

EN

回答 6

Stack Overflow用户

发布于 2008-11-19 18:12:59

第一个问题是由于表排序器自动将列检测为“text”-列(可能是因为空单元格)。要解决此问题,请使用以下代码初始化表排序程序,并根据数据将所有字段设置为数字或货币:

代码语言:javascript
复制
<script type="text/javascript" >
jQuery(document).ready(function() 
{ 
    jQuery("#communityStats").tablesorter({ 
        headers: { 2: { sorter:'digit' } , 
                   3: { sorter:'digit' } ,
                   4: { sorter:'digit' } ,
                   5: { sorter:'digit' } ,
                   6: { sorter:'digit' } ,
                   7: { sorter:'digit' } ,
                   8: { sorter:'currency' } ,
                   9: { sorter:'currency' } ,
                   10: { sorter:'currency' } ,
                   11: { sorter:'currency' } 
                 } 
    }); 
});
</script>
票数 23
EN

Stack Overflow用户

发布于 2008-11-19 18:10:22

我建议使用一些Javascript从表中删除最后一行。添加页脚,然后从表中重新添加已删除的行。要解决数字单元格中的空数据问题,您可能需要添加自己的custom parser

代码语言:javascript
复制
   $(function() {
       $('#communityStats').append("<tfoot></tfoot>");
       $('#communityStats > tr:last').remove()
                                     .appendTo('#communityStats > tfoot');
       $('#communityStats').tablesorter();
   });
票数 8
EN

Stack Overflow用户

发布于 2008-11-19 18:00:48

我认为#1的答案是,对于一些数字列,您有空白字段,这会导致表排序程序将该列检测为“字符串”列。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/302749

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档