弹出窗口悬停不在数据表的第二页上工作

时间:2016-04-02 08:54:16

标签: javascript jquery datatables popover

我动态添加了一列的内容......

 for (var i = 0; i < data.length; i++) {
   data.referred_by='<a href="#" data-toggle="popover" class="" title="'+temp[i].referred_by+'"data-trigger="hover" data-content="Total Referrals :'+temp[i].as_count+'">'+temp[i].referred_by+'</a>'
 }

以下代码是创建数据表

$('#datatable4').dataTable({
  'paging':   true,  // Table pagination
  'ordering': true,  // Column ordering 
  'info':     true,  // Bottom left status text
  "aaData" : data,

  aoColumns: [
    { mData: 'index' },
    { mData: 'patient_name' },
    { mData: 'age' },
    { mData: 'gender' },
    { mData: 'mobile_no' },
    { mData: 'email_id' },
    { mData: 'request_status' },
    { mData: 'referred_by' },
    { mData: 'ref_to_img'},
    { mData: 'ref_by_img'}
  ]

在准备好的功能中我添加了

 $('[data-toggle="popover"]').popover();

但是只在第一页上的数据表中,悬停上的弹出窗口正在工作......而在第二页以后它不能正常工作......是否有任何解决方案?

1 个答案:

答案 0 :(得分:22)

每次重绘dataTable时,您都需要重新初始化弹出窗口。 $('[data-toggle="popover"]').popover()只会初始化代码执行时可见的弹出窗口,而不是例如页面#2中的弹出窗口。请改为drawCallback()回调中的popover()

$('#datatable4').dataTable({
  ...
  drawCallback: function() {
    $('[data-toggle="popover"]').popover();
  }  
})