Как экспортировать pdfHtml5 для строки нижнего колонтитула из Datatable? - PullRequest
0 голосов
/ 10 октября 2018

Я использую новую функцию в DataTable - pdfHtml5.Проблема заключается в том, что экспортируется только pdf-страница.

Я отображаю «общую сумму» (сумма всех строк строк) только в последней странице нумерации страниц DataTable (строка нижнего колонтитула).

Если я 'Я перехожу на последнюю страницу и экспортирую pdf, тогда я могу отобразить «общую сумму» для строки нижнего колонтитула.
Но если я иду на другие страницы и экспортирую pdf, то не могу отобразить «общую сумму» для строки нижнего колонтитула.

Я экспортирую вот так

{
                      extend: 'pdfHtml5',
                      title: 'Vendors',
                      footer: true,
                      customize: function (doc) {
                          var rowCount = doc.content[1].table.body.length;
                          for (i = 1; i < rowCount; i++) {
                              doc.content[1].table.body[i][3].alignment = 'right';
                              doc.content[1].table.body[i][4].alignment = 'right';
                          }
                      },
                      exportOptions: {
                          columns: [0, 2, 3, 4, 5]
                      }

код общей суммы нижнего колонтитула здесь:

"footerCallback": function (row, data, start, end, display) {
                  var api = this.api(), data;

                  // Remove the formatting to get integer data for summation
                  var intVal = function (i) {
                      return typeof i === 'string' ?
                          i.replace(/[\$,]/g, '') * 1 :
                          typeof i === 'number' ?
                              i : 0;
                  };

                  // Total over all pages
                  total = api
                      .column(4)
                      .data()
                      .reduce(function (a, b) {
                          return intVal(a) + intVal(b);
                      }, 0);


                  // Update footer
                  if (end == data.length){
                      $(api.column(3).footer()).html(
                          'Total:'
                      );
                      $(api.column(4).footer()).html(
                          total.toFixed(2)
                      );

                  }
                  else{
                      $(api.column(3).footer()).html('');
                      $(api.column(4).footer()).html('');

                  }
              }

Как экспортировать строку нижнего колонтитула для всех остальных страниц?

Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...