Jquery Tablesorter:对字母上方的数字进行排序

发布于 2024-08-15 08:00:20 字数 319 浏览 3 评论 0原文

我使用 jquery tablesorter 来显示音乐图表。 所以我有一些带有艺术家-歌曲-图表位置的专栏。

柱形图位置主要包含数字;但当歌曲未在图表中列出时,则会获得值“-”。 当我想要对列进行排序时,这会产生排序问题,因为值“-”将排序在数字之上。

我明白了 迈克尔·杰克逊的人性 - 迈克尔·杰克逊惊悚片 1 Michael Jackson Bad 2

但我首先想要数字并按如下方式排序: 迈克尔·杰克逊惊悚片 1 迈克尔·杰克逊《坏人2》 迈克尔杰克逊人性 -

有人可以帮助我吗? 与数据类型有关吗?我现在使用varchar。

谢谢

I work with jquery tablesorter to display music charts.
So i have some columns with artist - song - chart position.

The column chart position contains mainly numbers; but when a song is not listed in the chart is gets the value "-".
This creates a sorting problem when i want to sort the column, because the values "-" will be sorted above the numbers.

I get this
Michael Jackson Human Nature -
Michael Jackson Thriller 1
Michael Jackson Bad 2

But i want first the numbers and sort like this:
Michael Jackson Thriller 1
Michael Jackson Bad 2
Michael Jackson Human Nature -

Can somebody help me ?
Has it something to do with the datatypes; i use now varchar.

Thanks

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

哑剧 2024-08-22 08:00:20

您可以尝试添加自己的解析器,例如此处中的示例。

在你的解析器中,你可以修改传递给表排序器的值 - 如果该值是“-”(如果这是你唯一的问题),你可以将其设置为,比方说,999999。肮脏,快速的黑客,但它就是这样我的想法和我会做什么。

然后,就像在您的示例中一样,您应该将类​​型设置为数字,以便数字可以很好地排序。

You could try adding your own parser, like in the example here.

In your parser you could modify the value that is passed to tablesorter - and if the value is "-" (if it's your only problem), you could set it to, lets say, 999999. Dirty, fast hack, but it's what comes to my mind and what I would do.

Then, like in your example, you should set the type to numeric, so the numbers are sorted well.

心凉怎暖 2024-08-22 08:00:20

谢谢,我明白了!
这是我也想分享的代码;有点复杂,因为我使用寻呼机、斑马效果和来自其他国家的多个图表位置:

$("#myTable")
.tablesorter({ headers: {3: {sorter:'charts'},4: {sorter:'charts'},5: {sorter:'charts'}
,widthFixed: true, widgets: ['zebra'] } })
.tablesorterPager({ container: $("#pager"), positionFixed: false }); 
}); 

Thanks, i got it !
Here is the code i want to share too; a bit complexer because i work with the pager, zebra-effects and multiple charts position from other countries:

$("#myTable")
.tablesorter({ headers: {3: {sorter:'charts'},4: {sorter:'charts'},5: {sorter:'charts'}
,widthFixed: true, widgets: ['zebra'] } })
.tablesorterPager({ container: $("#pager"), positionFixed: false }); 
}); 
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文