Jquery 更改条目后,Datatables排序错误

Jquery 更改条目后,Datatables排序错误,jquery,twitter-bootstrap,datatables,Jquery,Twitter Bootstrap,Datatables,我用一个图标来显示一些数据。 当我更改数据时,在本例中为年龄,则排序不再正确。 是否有可能改变这种行为? 请点击“Tiger Nixon”中的表格行,年龄会发生变化。现在对列进行排序,它不正确。另一个 例如: $(文档).ready(函数(){ // ----------------------------------------------------------------------- $(“#示例”).on('click','tr',function(){ var line=$(thi

我用一个图标来显示一些数据。 当我更改数据时,在本例中为年龄,则排序不再正确。

是否有可能改变这种行为?

请点击“Tiger Nixon”中的表格行,年龄会发生变化。现在对列进行排序,它不正确。另一个 例如:

$(文档).ready(函数(){
// -----------------------------------------------------------------------
$(“#示例”).on('click','tr',function(){
var line=$(this.attr('id');
var age=Math.floor(Math.random()*99)+1;
$(“tr[id=“+line+”]td[data element=age]”)html(age);
});    
// -----------------------------------------------------------------------      
$('#示例').DataTable();//初始化
} );

名字
姓
位置
办公室
年龄
开始日期
薪水
Extn。
电子邮件
老虎
尼克松
系统架构师
爱丁堡
61
2011/04/25
$320,800
5421
Tnixon@datatables.net
加勒特
冬天
会计
东京
63
2011/07/25
$170,750
8422
Gwinters@datatables.net
阿什顿
考克斯
初级技术作者
旧金山
66
2009/01/12
$86,000
1562
A.cox@datatables.net
塞德里克
凯莉
高级Javascript开发人员
爱丁堡
22
2012/03/29
$433,060
6224
Ckelly@datatables.net
艾里
佐藤
会计
东京
33
2008/11/28
$162,700
5407
A.satou@datatables.net
布瑞尔
威廉森
集成专家
纽约
61
2012/12/02
$372,000
4804
Bwilliamson@datatables.net
赫罗德
经销商
营业员
旧金山
59
2012/08/06
$137,500
9608
Hchandler@datatables.net
罗纳
戴维森
集成专家
东京
55
2010/10/14
$327,900
6200
Rdavidson@datatables.net

在datatable网站上,它说您需要在更改datatable后更新它

描述 如果主机数据表中的数据发生更改,则必须更新FixedColumns以反映此新数据。此方法提供了这样一种功能,只需使用DataTable中的最新数据重新绘制固定列

将来,一旦DataTables为表更新操作添加了事件,这将自动执行,但目前必须调用此方法

要实现这一点,请使用此函数

fixedColumns().update()
此处的示例代码:

var table = $('#myTable').DataTable();     
table.cell( 0, 0 ).data( 'New data' ).draw();
table.fixedColumns().update();

现在我找到了一个有效的解决办法。我还必须在tr参加活动之前插入tbody

另见:


我会尝试查看并找出他们的示例在更改年龄时起作用的原因
$(document).ready(function() {
    // -----------------------------------------------------------------------
  $("#example").on('click','tbody tr',function () { 
      var age = Math.floor(Math.random() * 99) + 1; // 1..99  
      var line = $('#example').dataTable().fnGetPosition(this);    

      $('#example').dataTable().fnUpdate(age, line, 4); // 4=column Age
  });    
  // -----------------------------------------------------------------------      
  $('#example').DataTable(); // initialize
} );