Tengo una tabla HTML en la plantilla de velocidad. Quiero exportar los datos de la tabla html para sobresalir usando java script o jquery, comatibale con todos los navegadores. Estoy usando el siguiente script
<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 bien en Mozilla Firefox , aparece con un cuadro de diálogo de Excel y solicita opciones para abrir o guardar. Pero cuando probé el mismo script en el navegador Chrome, no funciona como se esperaba, cuando se hace clic en el botón, no hay una ventana emergente para Excel. Los datos se descargan en un archivo con "tipo de archivo: archivo", sin extensión como .xls No hay errores en la consola de Chrome.
Ejemplo de jsfiddle:
http://jsfiddle.net/insin/cmewv/
Esto funciona bien en mozilla pero no en Chrome.
Caso de prueba del navegador Chrome:
Primera imagen: hago clic en el botón Exportar a Excel
y resultado:
fuente
Respuestas:
El script de exportación de Excel funciona en IE7 +, Firefox y Chrome.
Simplemente cree un iframe en blanco:
Llame a esta función en:
fuente
El complemento Datatable resuelve mejor el propósito y nos permite exportar los datos de la tabla HTML a Excel, PDF, TEXT. fácilmente configurable.
Encuentre el ejemplo completo en el enlace de referencia de la tabla de datos a continuación:
https://datatables.net/extensions/buttons/examples/html5/simple.html
(captura de pantalla del sitio de referencia de la tabla de datos)
fuente
Esto podria ayudar
fuente
http://wsnippets.com/export-html-table-data-excel-sheet-using-jquery/ pruebe este enlace, podría resolver su problema
fuente
En lugar de usar
window.open
, puede usar un enlace con elonclick
evento.Y puede poner la tabla html en la uri y establecer el nombre del archivo que se descargará.
Demo en vivo :
fuente
Exportación de mesa : la simple y fácil de implementar para exportar tablas HTML a archivos xlsx, xls, csv y txt.
Para usar esta biblioteca, simplemente llame al
TableExport
constructor:Se pueden transferir propiedades adicionales para personalizar la apariencia de sus tablas, botones y datos exportados. Vea aquí más información
fuente
Mi combinación de estos ejemplos:
https://www.codexworld.com/export-html-table-data-to-excel-using-javascript https://bl.ocks.org/Flyer53/1de5a78de9c89850999c
fuente
Puede usar una biblioteca como ShieldUI para hacer eso.
Admite la exportación a formatos de Excel de uso generalizado tanto XML como XLSX.
Más detalles aquí: http://demos.shieldui.com/web/grid-general/export-to-excel
fuente
Con respecto a la respuesta de sampopes del 6 de junio de 2014 a las 11:59:
He insertado un estilo CSS con un tamaño de fuente de 20px para mostrar más los datos de Excel. En el código de sampopes faltan las
<tr>
etiquetas iniciales , por lo que primero saco el título y luego las otras líneas de las tablas dentro de un bucle.fuente
tab.rows[j].cells[13]
, su ayuda es muy apreciadawindow.open('data:application/vnd.ms-excel,' + encodeURIComponent(tab_text));
la codificación es muy importante.Aquí los valores de 1 a 10 son los nombres de las columnas que obtiene
fuente
Puede usar tableToExcel.js para exportar la tabla en un archivo de Excel.
Esto funciona de la siguiente manera:
1). Incluya este CDN en su proyecto / archivo
2). Ya sea usando JavaScript:
3). O usando Jquery
Puede consultar este enlace de github para cualquier otra información
https://github.com/linways/table-to-excel/tree/master
o para consultar el ejemplo en vivo, visite el siguiente enlace
https://codepen.io/rohithb/pen/YdjVbb
Espero que esto ayude a alguien :-)
fuente
Mi versión de @sampopes responde
Requiere un iframe
Uso
fuente