如何在导出数据表成excel角度之前禁用autofilter选项?

时间:2019-03-24 12:48:16

标签: datatables angular7

我试图在我的数据表“ export as excel”选项中添加多个空白行,经过多次尝试,我设法实现了目标。 由于excel具有自动筛选选项,因此我无法在excel中将其禁用,因此我尝试了“ autofilter:false”,但在我的代码中没有起作用 其次,我的数据表中的标题单元已大大扩展,我附上了图片以供进一步理解 Picture

     [{

        extend:'excelHtml5',



        messageBottom:'Excel Generated by Edraak Systems',
        customize: function (xlsx) {
          var sheet = xlsx.xl.worksheets\['sheet1.xml'\];
          var numrows = 3;
          var clR = $('row', sheet);


        clR.each(function () {
          var attr = $(this).attr('r');
          var ind = parseInt(attr);
          ind = ind + numrows;
          $(this).attr("r",ind);
      });
      $('row c ', sheet).each(function () {
        var attr = $(this).attr('r');
        var pre = attr.substring(0, 0);
        var ind = parseInt(attr.substring(1, attr.length));
        ind = ind + numrows;
        $(this).attr("r", pre + ind);
    });

    function Addrow(index,data) {
     var msg='<row r="'+index+'">'
      for(var i=0;i<data.length;i++){
          var key=data\[i\].key;
          var value=data\[i\].value;
          msg += '<c t="inlineStr" r="' + key + index + '">';
          msg += '<is>';
          msg +=  '<t>'+value+'</t>';
          msg+=  '</is>';
          msg+='</c>';
      }
      msg += '</row>';
      return msg;
  }
  var r1 = Addrow(1, \[{ key: 'A', value: '2' }, { key: 'B', value: '' }\]);
  var r2 = Addrow(2, \[{ key: 'A', value: '' }, { key: 'B', value: '' }\]);
  var r3 = Addrow(3, \[{ key: 'A', value: '' }, { key: 'B', value: '' }\]);

  sheet.childNodes\[0\].childNodes\[1\].innerHTML = r1 + r2+ r3+ sheet.childNodes\[0\].childNodes\[1\].innerHTML;

    },

        exportOptions: {

          columns: \[ 0,1, 2,3,4, 5,6,7,8,9,10,11,12,13,14,15\],




        },
}][1]

0 个答案:

没有答案