jQuery DataTables按外部属性过滤

时间:2016-10-10 14:47:36

标签: javascript jquery backbone.js datatables

我有一个从Backbone模型的值生成的数据表。但我想基于模型属性而不是表中显示的值来实现过滤,因为后者通常是相同属性的人类可读版本,这些属性与原始属性相比无用或难以处理。

我正在寻找一种有效的方法来公开用于生成行(作为对象)到过滤API的主干模型,以便我可以按自定义模型属性进行过滤。

2 个答案:

答案 0 :(得分:2)

jQuery DataTables使用术语Orthogonal data,这意味着相同的属性可能包含不同的值,用于显示,排序,过滤和类型检测。

您可以使用columns.data选项来定义要显示的属性以及用于过滤/排序的属性。例如:

"columns": [
    "data": {
        "_": "phone",
        "filter": "phone_filter",
        "display": "phone_display"
    }
]

这意味着数据属性phone_filter用于搜索,phone_display用于显示,phone用于所有其他目的(类型检测,排序)。

有关详细信息和演示,请参阅this example

答案 1 :(得分:1)

正如Gyrocode.com's answer的补充 可以使用这样的data- *属性:

<td data-search="YourBackboneModelField">human-readable text</td>

documentation here