You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在jQuery DataTable中获取仅隐藏列的数据?

jQuery DataTable 获取仅隐藏列的数据

要获取仅隐藏列的数据,你可以分两步操作,比你之前的代码更简洁直接:

1. 先获取所有隐藏列的索引

用DataTable内置的选择器直接定位隐藏列,拿到它们的索引数组:

var dt = $('#example').DataTable();
// 获取所有隐藏列的索引,转成普通数组
var hiddenColIndexes = dt.columns(':hidden').indexes().toArray();

2. 提取目标行的隐藏列数据

根据你的需求选择对应的行范围,再提取隐藏列的数据:

情况1:获取所有行(包括筛选后隐藏的行)的隐藏列数据

var allHiddenData = dt.rows().data().map(function(rowData) {
  // 从当前行中提取所有隐藏列对应的数据
  return hiddenColIndexes.map(function(colIdx) {
    return rowData[colIdx];
  });
});
// allHiddenData 是一个二维数组,每个子数组对应一行的隐藏列数据

情况2:仅获取筛选后匹配的行(包括可见和筛选隐藏的行)的隐藏列数据

var filteredHiddenData = dt.rows({ filter: 'applied' }).data().map(function(rowData) {
  return hiddenColIndexes.map(function(colIdx) {
    return rowData[colIdx];
  });
});

情况3:仅获取当前页可见行的隐藏列数据

var currentPageHiddenData = dt.rows({ page: 'current' }).data().map(function(rowData) {
  return hiddenColIndexes.map(function(colIdx) {
    return rowData[colIdx];
  });
});

补充说明

你之前的第一段代码只是收集了隐藏列的索引,但没提取对应行的数据;第二段代码是拿到了筛选后可见行的所有列数据,但没筛选出隐藏列部分。上面的方法直接把这两步结合,精准提取你需要的隐藏列数据。

内容的提问来源于stack exchange,提问作者KitKat

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 15:02:37