繁体   English   中英

列排序后如何从jquery dataTable获取正确的行数据?

[英]How to get correct row data from jquery dataTable after column sorting?

我正在使用 jquery dataTable 来显示客户记录。 我第一次进入客户页面时,我在 dataTable 中有 20 条客户记录,按 customerId 列排序(因此它们从 20 到 1 开始显示,其中 20 是第 20 个客户的 id,1 是第一个客户的 id)以降序排列。 第 20 个客户显示在数据表的顶部。

现在,如果在我的 javascript 代码中执行以下操作

 var customerTable=$('#customer').dataTable();// where customer is the html div associated with dataTable

 var custData = customerTable.fnGetData(18)// it gives me data of 19 row in dataTable( as dataTable index starts from 0)
 // so i get the data of customer having customer id=19

到这里都很好。

现在我单击 customerId 列上的排序图标。 所以在排序后,id为1的客户会显示在dataTable的顶部,而id为20的客户将显示在底部。 现在我再次执行我的 javascript 操作

var customerTable=$('#customer').dataTable();

 var custData = customerTable.fnGetData(18)
 // it should give me data for customer id=2 Right? but still i am getting the old data i.e customer Data having id=19.

为什么排序后没有得到正确的数据? 在dataTable排序后,我应该如何获得带有行ID的正确数据?

我尝试了同样的事情,几乎没有什么变化。

首先创建全局变量来保存表。

var customerTable;

然后将对象初始化为 onready 状态。

$(document).ready(function() {
        customerTable = $('#customer').dataTable();
});

如果您现在排序并获取数据。 你可能会得到你想要的。

var custData = customerTable.fnGetData(18);

我唯一知道的是我没有在排序后启动 table 对象。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM