日期:2014-05-16  浏览次数:20259 次

怎么用JS实现把图像导出到excel?
TABLE导出到excel都没问题,但一加图像,导出后图像默认丢失

------解决方案--------------------
<HTML>
<HEAD>
<TITLE> 将页面中指定表格的数据导入到Excel中 </TITLE>
<SCRIPT LANGUAGE= "javascript ">
<!--
function AutomateExcel()
{

var oXL = new ActiveXObject( "Excel.Application "); //创建应该对象
var oWB = oXL.Workbooks.Add();//新建一个Excel工作簿
var oSheet = oWB.ActiveSheet;//指定要写入内容的工作表为活动工作表
var table = document.all.data;//指定要写入的数据源的id
var hang = table.rows.length;//取数据源行数
var lie = table.rows(0).cells.length;//取数据源列数

// Add table headers going cell by cell.
for (i=0;i <hang;i++){//在Excel中写行
for (j=0;j <lie;j++){//在Excel中写列
//定义格式
oSheet.Cells(i+1,j+1).Font.Bold = true;//加粗
oSheet.Cells(i+1,j+1).Font.Size = 10;//字体大小
if(table.rows(i).cells(j).innerHTML.toLowerCase().indexOf( ' <img ')!=-1){//如果其HTML代码包括 <img
oSheet.Cells(i+1,j+1).Select();//选中Excel中的单元格
oSheet.Pictures.Insert(table.rows(i).cells(j).getElementsByTagName( 'img ')[0].src);//插入图片
}
else{
oSheet.Cells(i+1,j+1).value = table.rows(i).cells(j).innerText;//向单元格写入值
}
}
}
oXL.Visible = true;
oXL.UserControl = true;
}
//-->
</SCRIPT>
</HEAD>

<BODY>
<table border= "0 " width= "300 " id= "data " bgcolor= "black " cellspacing= "1 ">
<tr bgcolor= "white ">
<td> &nbsp;姓名 </td>
<td> 年龄 </td>
<td> 性别 </td>
<td> 照片 </td>
</tr>
<tr bgcolor= "white ">
<td> 张三 </td>
<td> 22 </td>
<td> 女 </td>
<td> <img src= "http://www.csdn.net/Images/logo_csdn.gif " border= "0 "> </td>
</tr>
<tr bgcolor= "white ">
<td> 李四 </td>
<td> 23 </td>
<td> 男 </td>
<td> <Img src= "http://images.csdn.net/20070306/API120[1].60.gif " border= "0 "> </td>
</tr>
</table>
<input type= "button " name= "out_excel " onclick= "AutomateExcel(); " value= "导出到excel ">
</BODY>
</HTML>