У меня есть функция с именем exportExcel, которая экспортирует мою таблицу в файл Excel после нажатия кнопки, кнопка работает нормально и файл распознается, но он говорит: «xxx.xls - Echec - файл не найден», есть ли у кого-нибудьисправить это пожалуйста?Вот моя функция и где я вызываю ее в моем html-файле
home.component.ts
exportExcel(table1, filename = ''){
let downloadLink;
let dataType ='application/vnd.ms-excel';
let tableselect = document.getElementById('table1');
let tableHTML = tableselect.innerHTML.replace(/ /g,'%20');
//Filename
filename = filename?filename+'.xls':'CPF.xls';
//Download link element
downloadLink = document.createElement("a");
document.body.appendChild(downloadLink);
if(navigator.msSaveOrOpenBlob){
let blob = new Blob(['\ufeff', tableHTML],{
type: dataType
});
navigator.msSaveOrOpenBlob(blob, filename);
} else {
//Link to file
downloadLink.href = 'data' + dataType +',' +tableHTML;
//File name
downloadLink.download = filename;
//Triggering function
downloadLink.click();
}
}
home.component.html
<mat-tab>
<button class="bCopy2" (click)="exportExcel('tblData')"> Export to excel</button>
<div id="cp">
<table id="table1">
<thead>
<tr>
<td>name</td>
<td>firstname</td>
<td>id</td>
<td>adress</td>
</tr>
</thead>
<tbody>
<tr>
<td>data</td>
<td>data</td>
<td>data</td>
<td>data</td>
</tr>
</tbody>
</table>
</div>
</mat-tab>
РЕДАКТИРОВАТЬ:
Я сделал это с помощью плагина jQuery table2excel, используя эту функцию:
$('.bCopy2').on('click', function(e){
e.preventDefault();
ResultsToTable();
});
function ResultsToTable(){
$(".table1").table2excel({
exclude: ".noExl",
name: "Results"
});
}
});