Datatable Extended Excel选项不适用于分页

时间:2019-10-16 04:39:54

标签: javascript jquery arrays excel datatables

在参考文献here中,我具有具有excel导出自定义功能的数据表,可以使用单元格颜色进行打印。当paging: false,时,它工作正常。使用分页时,导出具有单元格颜色的excel不完整。如何使其与分页一起使用?

3 个答案:

答案 0 :(得分:1)

在建立excel时,我注意到您曾经通过检查css属性颜色来为excel文件中的单元格上色,如果它的颜色为红色,则也会以excel红色上色。

它与您的 paging:false 效果很好,因为所有需要颜色的单元格都已经着色,因为所有的颜色都显示在一页中,而如果 paging:true ,在excel中具有颜色的单元格仅是那些已显示在首页中且已经填充了颜色的单元格,那些需要未显示颜色或其他页码中的颜色的单元格在excel中没有颜色,因为它没有显示在前面并且没有着色。

因此,我的解决方案是在创建excel时自定义函数中的rowCallback具有相同的条件。请看下面:

$('row c[r^="C"]', sheet).each( function (data, info) {
          console.log(info.textContent); 
          if (skippedHeader) {



            var txt = info.textContent; 
            if (txt === 'London') {
              $(this).attr( 's', '35' );
            }
            else if (txt === 'New York') {
              $(this).attr( 's', '40' );
            }

            count++;
          }
          else {
            skippedHeader = true;
          }
        });

您还可以检查链接:http://live.datatables.net/jijumeji/105/edit

答案 1 :(得分:1)

使用var colour = $(table.cell(':eq('+count+')',2).node()).css('background-color');代替

来解决此问题
var colour = $('tbody tr:eq('+parseInt(count)+') td:eq(2)').css('background-color');

参考here

答案 2 :(得分:-1)

对于Excel和pdf导出,必须使用手动渲染。

我认为,自动渲染毫无用处。

https://editor.datatables.net/examples/extensions/exportButtons