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插件,就选择了这种笨一点的办法来解决。