2

我有一张要导出的表。我的目标是还保留应用于表格的 CSS,以便它在 excel 中的显示与它在页面上的外观完全一致(或非常接近)。我正在使用这个功能:

function exportToExcel( container ) {
    var begin = '<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>SlideIdTool</x:Name>"' +
        '<x:WorksheetOptions><x:DisplayGridlines/></x:WorksheetOptions></x:ExcelWorksheet></x:ExcelWorksheets>' +
        '</x:ExcelWorkbook></xml><![endif]--></head><body>';
    var end = '</body></html>';
    window.open( 'data:application/vnd.ms-excel,' + encodeURIComponent( begin + $( container ).html() + end ) );
}

这在 Chrome 和 Firefox 中效果很好。但它在 IE 9 或 10 中不起作用。我看到一个窗口弹出但没有内容,没有请求下载任何内容,nada。在 chrome 中,它直接下载到一个文件,没有弹出窗口或任何东西。

关于调整或修复以从该功能中获得跨浏览器功能的任何建议?

4

0 回答 0