Bonjour à tous,
Je cherche avec jQuery à exporter un tableau HTML vers un format Excel en "XLS" et non pas en "CSV" avec la prise ne charge de l'UTF-8, de plus j'ai des images dans le tableau.
Merci d'avance
Version imprimable
Bonjour à tous,
Je cherche avec jQuery à exporter un tableau HTML vers un format Excel en "XLS" et non pas en "CSV" avec la prise ne charge de l'UTF-8, de plus j'ai des images dans le tableau.
Merci d'avance
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43 <html xmlns:v="urn:schemas-microsoft-com:vml" 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> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> <meta name="ProgId" content="Excel.Sheet"> <meta name="Generator" content="Microsoft Excel 9"> <!--[if gte mso 9]> <xml> <x:ExcelWorkbook> <x:ExcelWorksheets> <x:ExcelWorksheet> <x:Name>Abandoned Baskets contents list</x:Name> <x:WorksheetOptions> <x:FitToPage/> <x:Print> <x:FitWidth>1</x:FitWidth> <x:ValidPrinterInfo/> </x:Print> </x:WorksheetOptions> </x:ExcelWorksheet> </x:ExcelWorksheets> </x:ExcelWorkbook> </xml> <![endif]--> </head> <body> <table> <tr> <th>Column 1</th> <th>Column 2</th> <th>Column 3</th> </tr> <tr> <td>...</td> <td>...</td> <td>...</td> </tr> </table> </body> </html>
Il faudra également préparer la réponse du serveur en envoyant le type MIME suivant : application/vnd.ms-excel
et préciser le charset UTF-8
SAlut ;)
Merci pour ta réponse, le problème avec ton code c'est que les images ne s'affichent pas.
Bonsoir
J'ai testé la solution tableToExcel.
Si on enregistre la conversion avant de l'ouvrir, si les images dans la table ont une URL complète, Excell va se plaindre que le format n'est pas correct, mais si l'on ouvre tout de même le document la table est complète.
Je n'ai pas trouvé mieux.
On utilise pas cette solution pour envoyer des images.
C'est peut être parce que les images n'ont pas une url absolue, comme le suggère l'intervention de danielhagnoul.
Une autre solution serait de les embarquer dans le document en les encodant en base64
<img src="data:image/jpg;base64,/9j/4AAQSkZJRgABAQE..........ASABIAAD/2wAGADABg D//Z" alt="aperçu d'une image encodée en base64" />
J'ai oublié de préciser que dans mon test j'ai utilisé uniquement une image PNG, donc je ne sais pas si cela fonctionnera avec un autre format.
J'arrive à faire l'export mais pour les images ça reste problématique, donc j'ai eu une autre idée. Au lieu d'afficher l'image normalement sur mon site, je vais l'afficher avec jQuery, du coup j'aurais les informations textuel pour les fichiers XLS : http://www.developpez.net/forums/d14...mplacer-image/