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

如何通过DataTable对象遍历行,检查每行复选框的选中状态?

解决Datatable遍历所有行检查复选框选中状态的问题

直接用Datatable提供的rows().every()方法就能遍历所有行(包括不在当前页面的),再通过node()获取对应行的DOM节点,之后就可以用你熟悉的jQuery方法检查复选框状态了,代码示例如下:

myDataTable.rows().every(function() {
  // 获取当前行的DOM元素
  const rowDom = this.node();
  // 检查该行的复选框是否选中
  const checked = $(rowDom).find(':checkbox').is(':checked');
  
  // 这里可以根据状态做后续操作,比如收集选中行的数据
  if (checked) {
    console.log('选中行的数据:', this.data());
  }
});

补充说明

  • rows().every()会遍历Datatable的所有行,不管是否在当前分页页面显示,刚好匹配你需要检查全量行状态的需求。
  • this.node()是关键:它能拿到当前行对应的真实DOM节点,这是data()方法做不到的——data()只存行的数据源,不关联DOM元素。
  • 如果只需要检查当前页面的行,把rows()改成rows({page:'current'})即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.05 13:07:04