Datatables隐藏列并获取值

本文介绍了如何在Datatables中隐藏列,并在分页后正确获取隐藏列的值。由于作者将所有数据加载到前端进行分页,故遇到在翻页后获取ID始终为第一页的问题。解决方案是对原始获取隐藏列值的代码进行了调整,以适应分页场景。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Datatables隐藏列并获取值

在生成表格时对ID进行隐藏

columns: [{
    "data": "id",
    //隐藏属性
    "visible": false,
    "name": "id",
},
{
    "data": null,
    "render": function(data, type, row) {
        return "<td><a class=\"details\">详情</a></td>";
    }]

搜到的代码获取隐藏列的值代码为:

//table_id 为你的表格ID
//获取点击的行数索引
var row = $(this).parents("tr").index();
//获取隐藏列的ID
var id = $('#table_id').DataTable().row(row).data().id;

或者

//table_id 为你的表格ID
//获取点击的行数索引
var row = $("table#table_id tr").index($(this).closest("tr"));
 //获取隐藏列的ID
var id = $('#table_id').DataTable().row(row-1).data().id;

在使用过程中点击下一页之后获取的ID还是第一页的值,因为我是将数据全部加载到前台交给插件分页,于是自己进行修改方便分页之后获取值

//table_id 为你的表格ID
//获取点击的行数索引
var row = $(this).parents("tr").index();
//获取当前页的开始
var rows = $('#table_id').dataTable().fnSettings()._iDisplayStart;
//当前页开始+行数索引 获取隐藏列的值
var id = $('#table_id').DataTable().row(rows+row).data().id;

不是很熟Datatables插件,就选择了这种笨一点的办法来解决。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值