数据表排序数字无法正常工作

Posted

技术标签:

【中文标题】数据表排序数字无法正常工作【英文标题】:Datatables sort numbers is not working properly 【发布时间】:2013-12-14 21:59:25 【问题描述】:

我在我的页面上使用数据表,它似乎工作正常,除了当你对数字字段进行排序时,它的排序方式很奇怪,看看插图

这个也是

我已经尝试过放置

 "aoColumns": [
            null,
            null,
            null,
            null,
            null,
            null,
             "sType": 'numeric',
            "oCustomInfo":
    "decimalPlaces":1,
    "decimalSeparator":"."
            ,
            null
        ]

但这似乎进一步扰乱了它的行为,因为它变得无法排序。你有线索吗?

谢谢

【问题讨论】:

阅读sorting docs 并设置类型....可以通过google找到很多...datatables sort numbers ...包括SO中关于此主题的大量帖子 嗯,我试过了,但似乎没有一个解决方案有效。 尝试完全删除aoColumns-definition,如果没有它,它应该可以立即正常工作,如果没有任何行破坏带有小数的列的印象我>!!也就是说,例如,如果某些数字有尾随空格,则将其视为字符串 @davidkonrad 感谢您的回复,实际上我一开始没有列定义,但它没有用,aoColumns 是一种解决方法,也没有用 :) @Digitalfortress,我会说你应该开始修剪列的值。我 99.99% 确定您至少在其中一行中有一些空格或类似的空格,然后数据表排序算法进入“字符串”模式。问题是数据,而不是数据表。也去过:) 【参考方案1】:

您的问题是,由于某种原因,表格数据被视为字符串而不是数字。检查值的格式。

如果你有这样的例子:

<table .....>
  <tbody>
    <tr>
      <td><span>1</span></td>
    </td>
    ....
  </tbody>
</table>

然后 Datatables 将该列的值视为字符串而不是数字。如果您使用 asp .NET 等框架输出文本,这很常见。

类似问题请见this

【讨论】:

以上是关于数据表排序数字无法正常工作的主要内容,如果未能解决你的问题,请参考以下文章

服务器端数据表分页无法正常工作

快速排序的动态大量对象无法正常工作[关闭]

Pentaho Row Denormaliser 步骤不工作

Drool 无法正确排序数字

mysql 字符集 utf 8 排序规则(dup 键)无法正常工作

Access 数据库 - 即使使用 IMEX=1 从 Excel 工作表导入数据也无法正常工作