1 <table id="table">
2 <tr>
3 <th>ID</th>
4 <th>姓名</th>
5 <th>年龄</th>
6 <th>职业</th>
7 <th>地区</th>
8 <th>邮箱</th>
9 </tr>
10 <tr>
11 <td>1</td>
12 <td>admin</td>
13 <td>23</td>
14 <td>程序员</td>
15 <td>天津</td>
16 <td>admin@kali.com</td>
17 </tr>
18 <tr>
19 <td>2</td>
20 <td>guest</td>
21 <td>23</td>
22 <td>测试员</td>
23 <td>北京</td>
24 <td>guest@kali.com</td>
25 </tr>
26 </table>
27 <input id="Button1" type="button" value="导出EXCEL"onclick="tableToExcel('table','测试')" />
1 var tableToExcel = (function () {
2 var uri = 'data:application/vnd.ms-excel;base64,',
3 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 version="1.0" encoding="UTF-8" standalone="yes"?><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>',
4 base64 = function (s) { return window.btoa(unescape(encodeURIComponent(s))) },
5 format = function (s, c) {
6 return s.replace(/{(\w+)}/g,
7 function (m, p) { return c[p]; })
8 }
9 return function (table, name) {
10 if (!table.nodeType) table = document.getElementById(table)
11 var ctx = { worksheet: name || 'Worksheet', table: table.innerHTML }
12 window.location.href = uri + base64(format(template, ctx))
13 }
14 })()