datatables - 将行添加为 DOM 节点时如何应用排序
问题描述
我有一个用例,我需要通过 javascript 动态添加行。我想将该行添加为内联的 DOM 节点,因为它最适合我的情况。所以我正在做类似以下的事情:
var name // String
var dob // Date
table.row.add($('<tr><td>' + name + '</td><td>' + dob.format('dd-mm-yy') + '</td></tr>'));
但是,使用这种方法,DOB 字段上的排序将不正确。我需要一种方法来告诉它按 dob.getTime() 排序。
有没有办法我可以做到这一点?
解决方案
解决方案是使用 html5 data-* 属性。所以排序可以这样纠正:
table.row.add($('<tr><td data-sort=dob.getTime().toString()>' + name + '</td><td>' + dob.format('dd-mm-yy') + '</td></tr>'));
但是请注意,在未初始化的表上使用 data-* 属性存在问题。可以在此处找到该问题的解决方案
推荐阅读
- reactjs - 如何在材料 ui 中显示比文本字段宽度更长的文本?
- blazemeter - 错误:RuntimeError:Polyfit 健全性测试发出警告,很可能是由于使用了有问题的 Accelerate 后端
- php - 当我尝试更新数据库信息时出现问题 - DOESN'T UPDATE Just create a new row
- ansible - 在 AWS 云上创建目标组时 ansible with_items 出错
- c# - 多个控制器上的 Mongodb C# 事务
- python-3.x - 我无法在 python3 中导入模型
- c++ - CMake + ccache:RULE_LAUNCH_COMPILE 或 CMAKE_
_COMPILER_LAUNCHER - ethereum - 该合约与 EtherScan 上合约源代码的部署字节码匹配
- cassandra - 将复杂 JSON 推送到 Cassandra 表中的现有工具
- javascript - 具有相同 redux 反应组件的多个实例