Не сохраняется файл в хроме
Код сохранения таблицы html в excel
table = document.getElementById('grid__staticWrapper') var ctx = {worksheet: "excel" || 'Worksheet', table: table.innerHTML} window.location.href = ('data:application/vnd.ms-excel,' + encodeURIComponent(ctx.table)); Были проведены следующие опыты Так всё работает ctx.table = ctx.table.substring(0,1000000) Не работает ctx.table = ctx.table.substring(0,2000000) Общая длина 13 млн символов В консоле ошибок нет. Только в Network пишет status-canseled или data. В фаерфоксе всё работает. Господа, есть идеи как решить проблему? |
Rise, Спасибо.
НЕ удобно будет для юзеров |
АrnowtАА,
Цитата:
|
Решение проблемы.
table = document.getElementById('grid__staticWrapper').innerHTML var parts = [ new Blob(['<html xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:x="urn:schemas-microsoft-com:office:excel" xmlns="http://www.w3.org/TR/REC-html40"><head><!--[if gte mso 9]><xml><x:ExcelWorkbook><x:ExcelWorksheets><x:ExcelWorksheet><x:Name>{worksheet}</x:Name><x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets></x:ExcelWorkbook></xml><![endif]--></head><body><table>'] , {type: 'vnd.ms-excel'}), table + '</table></body></html>', new Uint16Array([33]) ]; // Construct a file var file = new File(parts, 'integrator.xls', { type: "overide/mimetype" // optional - default = '' }); var fr = new FileReader(); fr.onload = function(){ $("[data-show = 'excel']").attr("href", URL.createObjectURL(file)).attr("download", file.name).text('Скачать'); } fr.readAsText(file); }) |
Часовой пояс GMT +3, время: 23:58. |