Exporter le code HTML de la table vers excel ne fonctionne pas sous IE
L'exportation HTML tableau Excel fonctionne très bien sur Chrome et Firefox, mais il ne fonctionne pas dans Internet Explorer 10.
var tableToExcel = (function() {
var uri = 'data:application/vnd.ms-excel;base64,',
template = '<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>{table}</table></body></html>',
base64 = function(s) {
return window.btoa(unescape(encodeURIComponent(s)))
},
format = function(s, c) {
return s.replace(/{(\w+)}/g, function(m, p) {
return c[p];
})
}
return function(table, name) {
if (!table.nodeType) table = document.getElementById(table)
var ctx = {
worksheet: name || 'Worksheet',
table: table.innerHTML
}
window.location.href = uri + base64(format(template, ctx))
}
})()
OriginalL'auteur Dinesh | 2014-03-28
Vous devez vous connecter pour publier un commentaire.
Excel Exporter le Script fonctionne sur IE7+ Mozilla & Chrome
===========================================================
Il suffit de Créer un vide iframe
Appeler cette fonction sur
JSFiddle (Note seulement testé dans IE 10):
http://jsfiddle.net/x0av0ax5/1/
Travaillé avec la version 11.0.9600.18124
Il fonctionne très bien sous IE 11. Mais après l'exportation, quand j'ouvre le fichier xls, il affiche un message d'avertissement disant: "Le format de fichier et l'extension ne correspond pas. Le fichier peut être endommagé ou dangereux... voulez-vous l'ouvrir il de toute façon?" Si je appuyez sur oui, l'excel est ouvert parfaitement. Pourriez-vous avoir la moindre idée de prévenir le message d'avertissement ???
Rahman: Cet avertissement est à partir de l'application excel et c'est parce que nous sommes de l'enregistrement des données dans le vieux format excel(séparées par des tabulations). Dans le cas où vous souhaitez avoir dans le dernier format excel, vous aurez à rédiger une sorte de code serveur et joindre le fichier à la réponse car pas de script côté client, fonctionne parfaitement bien pour les nouveaux codages.
Grâce sampopes. Si quelqu'un à trouver quelque script côté client, pour éviter que ce message s'il vous plaît partager pour les autres.
OriginalL'auteur
Veuillez voir ce plugin qui utilise BLOB.
https://github.com/rainabba/jquery-table2excel
OriginalL'auteur Saikumar
données uri ne prend pas en charge c'est à dire, peut-être que vous postez votre excel xml des données au serveur pour générer le fichier.
Et vous pouvez utiliser Downloadify (Flash) pour générer le fichier.
https://github.com/dcneiner/Downloadify
Sa ne fonctionne pas
Tout d'abord, il y a des exemples dans GitHub, et merci de revoir la question avec tout code que vous avez essayé qui ne sont pas de travail ou de l'erreur. Merci
OriginalL'auteur Allen Chak
Trouvé une version communautaire de SheetJS qui fonctionne comme un cham!
Aucun avertissement comme "Le format de fichier et l'extension de la "file.xls" ne correspondent pas. Ce fichier peut être endommagé ou dangereux."
Importer la bibliothèque
Coller la fonction qui appelle la bibliothèque
Déclencher la fonction à l'aide d'un bouton ou quoi que ce soit qui répondent à vos besoins.
Exemple de code peut être trouvé dans ce page
OriginalL'auteur Kevin Ng