【发布时间】:2009-12-14 02:17:15
【问题描述】:
我有一个纯文本列,排序工作正常,但是当我将列数据更改为 HTML 常规链接时,排序似乎很随机且损坏。我在网站上找不到有关此问题的任何其他文档。
http://www.datatables.net/usage/features
有什么建议吗?
【问题讨论】:
标签: jquery sorting jquery-plugins datatable
我有一个纯文本列,排序工作正常,但是当我将列数据更改为 HTML 常规链接时,排序似乎很随机且损坏。我在网站上找不到有关此问题的任何其他文档。
http://www.datatables.net/usage/features
有什么建议吗?
【问题讨论】:
标签: jquery sorting jquery-plugins datatable
使用 sSortDataType 和 sType(值为 html)将列标记为包含 HTML,并在排序前将其删除。 Columns 页面上的文档。
【讨论】:
...{'sSortDataType': 'dom-text', 'aTargets', [2] }, {'sType', 'html', 'aTargets': [2] }
听起来表格是按文字 HTML 字符串而不是文本排序的。我没有使用过那个插件,但可能有一种方法可以覆盖默认的排序方法。
如果没有,请尝试TableSorter,因为它会这样做。
【讨论】:
我会检查插件的来源,看看它是否在这样的地方排序
var sortText = $(this).html();
并将html() 方法更改为text()。这将去除所有标签并仅在文本节点上对其进行排序。
【讨论】:
我使用链接解决列排序的方法是使用服务器端处理。这在服务器端代码上设置排序过程,排序由 SQL 处理。该链接在事后添加到每一行。返回到客户端的结果正确显示。否则,tvanfosson 的答案似乎效果很好。
【讨论】: