您的位置:首页 > Web前端 > JavaScript

从jsp页面导出Excel(IE和其他浏览器下)

2015-11-18 12:26 573 查看
var idTmr;
function isIE() { //ie?

            if (!!window.ActiveXObject || "ActiveXObject" in window)

                return true;

            else

                return false;

        }

        function method2(tableid) {//整个表格拷贝到EXCEL中
if(isIE())
{
  
window.clipboardData.setData("Text",document.all(tableid).innerText);//outerHTML会复制html标签
try{
var ExApp = new ActiveXObject("Excel.Application")
var ExWBk = ExApp.workbooks.add()
var ExWSh = ExWBk.worksheets(1)
ExApp.DisplayAlerts = false
ExApp.visible = true
}catch(e){
alert("您的电脑没有安装Microsoft Excel软件!")
return false
}  
ExWBk.worksheets(1).Paste; 

try {

} catch (e) {
alert("导出失败,请检查是否安装Excel!");
} finally {

}

}
else
{
tableToExcel('result')
}

        }

        function Cleanup() {

            window.clearInterval(idTmr);

            CollectGarbage();

        }
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))
 }
})()

<input id="Button1" type="button" value="导出EXCEL" onclick="javascript:method2('result')" />
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: