我有一张我想要导出的表格。我的目标是保留应用于表的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中,它直接下载到文件,没有弹出窗口或任何东西。
有关调整或修复以获取此功能的跨浏览器功能的任何建议吗?