columns() 缓存
源自:DataTables 1.10
获取所选列的数据表缓存数据。
已弃用!
从第 2.0 版开始,此功能已被弃用。此功能尚未预定删除,但建议不使用此功能,而应使用下面讨论的替代功能。
使用 column().render()
获取特定渲染类型的数据,而不是访问 DataTables 的缓存。此方法将在 DataTables 3 中删除。
说明
DataTables 缓存搜索和排序数据,以便当需要时,这些操作可以尽可能快速地运行。有时,获取 DataTables 为这些操作缓存的数据很有用,例如在创建 select
列表以提供基于列的过滤器时。
不能保证在任何特定时刻都可以获得缓存的数据。如果 DataTables 尚未请求数据,则不会缓存数据。使用 order
选项且尚未对某列执行排序时,这一点尤为明显。使数据失效也将会删除缓存。
请注意,返回数组中数据的顺序以及从其中获取数据的行(搜索的行、可见的行等)由获取选定列所用 selector-modifier
选项的 column()
选择器控制。
请注意,此方法主要针对需要访问 DataTables 已存储的内部数据的插件开发者。
类型
示例
对具有 select-filter
类的每列构建一个搜索。
var table = new DataTable('#myTable');
table.columns('.select-filter').every(function () {
var that = this;
// Create the select list and search operation
var select = $('<select />')
.appendTo(this.footer())
.on('change', function () {
that.search($(this).val()).draw();
});
// Get the search data for the first column and add to the select list
this.cache('search')
.sort()
.unique()
.each(function (d) {
select.append($('<option value="' + d + '">' + d + '</option>'));
});
});
相关
以下选项直接相关,可能对你的应用程序开发也很有用。