2012-11-08 来源:网络
【实例名称】
用JavaScript导出图片到Excel
【实例描述】
用JavaScript可以轻松地将文字导入Excel中。本例将学习如何将图片也导入Excel中。
【实例代码】
<HTML> <HEAD> <TITLE>将页面中指定表格的数据导入到Excel中</title> <SCRIPT LANGUAGE="javascript"> function AutomateExcel() {
var oExcel = new ActiveXObject("Excel.Application"); //创建Excel对象 var oWork = oExcel.Workbooks.Add(); //新建一个Excel工作簿 var oSheet = oWork.ActiveSheet; //指定要写入内容的工作表为活动工作表 var table = document.all.myTbl; //指定要写入的数据源的id var myRow = table.rows.length; //取数据源行数 var myCell = table.rows(0).cells.length; //取数据源列数
for (i=0;i<myRow;i++){//在Excel中写行 for (j=0;j<myCell;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; //向单元格写入值 } } } oExcel.Visible = true; oExcel.UserControl = true; } </SCRIPT> </HEAD>
<BODY> <table border="1" width="500" id="myTbl" bgcolor="blue"> <tr bgcolor="white"> <td> 姓名</td> <td>年龄</td> <td>地址</td> <td>照片</td> </tr> <tr bgcolor="white"> <td>张三</td> <td>22</td> <td>北京海淀</td> <td><img src="logo1.gif" border="0"></td> </tr> <tr bgcolor="white"> <td>李四</td> <td>23</td> <td>上海浦东</td> <td><Img src="logo2.gif" border="0"></td> </tr> </table> <input type="button" name="export" onclick="AutomateExcel();" value="导出到Excel"> </BODY> </HTML>
【运行效果】
【难点剖析】
本例的重点是Excel组件的运用。如果是普通文本,可以直接使用Excel单元格文本等于表格单元格文本的方法。但如果表格内是图片,则必须使用“Pictures.Insert”方法将图片插入到Excel中。
【源码下载】
为了JS代码的准确性,请点击:用JavaScript导出图片到Excel 进行本实例源码下载