Eu tenho uma tabela HTML no modelo de velocidade. Quero exportar os dados da tabela html para o excel usando java script ou jquery, comatibale com todos os navegadores. Estou usando o script abaixo
<script type="text/javascript">
function ExportToExcel(mytblId){
var htmltable= document.getElementById('my-table-id');
var html = htmltable.outerHTML;
window.open('data:application/vnd.ms-excel,' + encodeURIComponent(html));
}
</script>
Este script funciona bem no Mozilla Firefox , ele aparece com uma caixa de diálogo do Excel e pede opções para abrir ou salvar. Mas quando testei o mesmo script no navegador Chrome ele não está funcionando como esperado, ao clicar no botão não há pop-up para o excel. Os dados são baixados em um arquivo com "tipo de arquivo: arquivo", sem extensão como .xls. Não há erros no console do Chrome.
Exemplo de Jsfiddle:
http://jsfiddle.net/insin/cmewv/
Isso funciona bem no Mozilla, mas não no Chrome.
Caso de teste do navegador Chrome:
Primeira imagem: clico no botão Exportar para excel
e resultado:
fonte
Respostas:
O script de exportação do Excel funciona no IE7 +, Firefox e Chrome.
Basta criar um iframe em branco:
Chame esta função em:
fonte
O plugin datável resolve melhor o propósito e nos permite exportar os dados da tabela HTML para Excel, PDF, TEXT. facilmente configurável.
Encontre o exemplo completo no link de referência da tabela de dados abaixo:
https://datatables.net/extensions/buttons/examples/html5/simple.html
(captura de tela do site de referência da tabela de dados)
fonte
Isso pode ajudar
fonte
http://wsnippets.com/export-html-table-data-excel-sheet-using-jquery/ tente este link, ele pode resolver o seu problema
fonte
Em vez de usar,
window.open
você pode usar um link com oonclick
evento.E você pode colocar a tabela html no uri e definir o nome do arquivo a ser baixado.
Demonstração ao vivo :
fonte
TableExport - A biblioteca simples e fácil de implementar para exportar tabelas HTML para arquivos xlsx, xls, csv e txt.
Para usar esta biblioteca, basta chamar o
TableExport
construtor:Propriedades adicionais podem ser passadas para personalizar a aparência de suas tabelas, botões e dados exportados. Veja aqui mais informações
fonte
Minha fusão destes exemplos:
https://www.codexworld.com/export-html-table-data-to-excel-using-javascript https://bl.ocks.org/Flyer53/1de5a78de9c89850999c
fonte
Você pode usar uma biblioteca como a ShieldUI para fazer isso.
Ele oferece suporte à exportação para os formatos Excel amplamente usados de XML e XLSX.
Mais detalhes aqui: http://demos.shieldui.com/web/grid-general/export-to-excel
fonte
Em relação à resposta sampopes de 6 de junho '14 às 11h59:
Inseri um estilo css com tamanho de fonte de 20px para exibir os dados do Excel maiores. No código sampopes, faltam as
<tr>
tags principais , portanto, primeiro produzo o título e, em seguida, as outras linhas da tabela em um loop.fonte
tab.rows[j].cells[13]
, sua ajuda é muito apreciadawindow.open('data:application/vnd.ms-excel,' + encodeURIComponent(tab_text));
o enconding é muito importante.Aqui, os valores de 1 a 10 são nomes de colunas que você está obtendo
fonte
Você pode usar tableToExcel.js para exportar tabela em arquivo excel.
Isso funciona da seguinte maneira:
1). Inclua este CDN em seu projeto / arquivo
2). Qualquer um usando JavaScript:
3). Ou usando Jquery
Você pode consultar este link do github para qualquer outra informação
https://github.com/linways/table-to-excel/tree/master
ou para consultar o exemplo ao vivo, visite o seguinte link
https://codepen.io/rohithb/pen/YdjVbb
Espero que isso ajude alguém :-)
fonte
Minha versão de @sampopes responde
Requer um iframe
Uso
fonte