问题描述
<%@pagelanguage="java"pageEncoding="gbk"%><%@tagliburi="http://struts.apache.org/tags-bean"prefix="bean"%><%@tagliburi="http://struts.apache.org/tags-html"prefix="html"%><%@tagliburi="http://struts.apache.org/tags-logic"prefix="logic"%><%@tagliburi="http://struts.apache.org/tags-tiles"prefix="tiles"%><!DOCTYPEHTMLPUBLIC"-//W3C//DTDHTML4.01Transitional//EN"><html:htmllang="true"><head><html:base/><metahttp-equiv="Content-Type"content="text/html;charset=gb2312"><title>将查询结果导出到Word</title><scriptlanguage="javascript">functionoutDoc(){vartable=document.all.storage;row=table.rows.length;column=table.rows(1).cells.length;varwdapp=newActiveXObject("Word.Application");wdapp.visible=true;wddoc=wdapp.Documents.Add();//添加新的文档thearray=newArray();//将页面中表格的内容存放在数组中for(i=0;i<row;i++){thearray[i]=newArray();for(j=0;j<column;j++){thearray[i][j]=table.rows(i).cells(j).innerHTML;}}varrange=wddoc.Range(0,0);wdapp.Application.Activedocument.Paragraphs.Add(range);wdapp.Application.Activedocument.Paragraphs.Add();rngcurrent=wdapp.Application.Activedocument.Paragraphs(3).Range;varobjTable=wddoc.Tables.Add(rngcurrent,row,column)//插入表格for(i=0;i<row;i++){for(j=0;j<column;j++){objTable.Cell(i+1,j+1).Range.Text=thearray[i][j].replace(" ","");}}wdapp=null;}</script></head><body><tableid="storage"width="600"cellspacing="0"cellpadding="1"align="center"><tr><tdcolspan="6"align="center"><bean:messagekey="browser.project"/></td></tr><logic:presentname="finishrecord"scope="request"><tralign="center"bgcolor="#ffffff"><td><bean:messagekey="project.name"/></td><td><bean:messagekey="project.punit"/></td><td><bean:messagekey="project.ptime"/></td><td><bean:messagekey="project.pid"/></td></tr><logic:iterateid="mem"name="finishrecord"type="com.pdcenter.struts.model.Project"><tr><td><bean:writename="mem"property="pname"/></td><td><bean:writename="mem"property="punit"/></td><td><bean:writename="mem"property="ptime"/></td><td><bean:writename="mem"property="pid"/></td></tr></logic:iterate></logic:present><tr><td><ahref="#"onClick="outDoc()">导出到Word</a></td><td><ahref="#"onClick="outExcel()">导出到Excel</a></td></tr></table></body></html:html>导出word没有成功,导出excel不会,各位帮我写一下感激不尽!
解决方案
解决方案二:
贴一下错误代码?或者看看这个:
解决方案三:
Word.Application这个控件有没有在浏览器中注册
解决方案四:
这个是struts导出么,这是用控件导出。1楼的例子不错
解决方案五:
functiontableToExcel(){window.clipboardData.setData("Text",document.all("tab").outerHTML);try{varExApp=newActiveXObject("Excel.Application");varExWBk=ExApp.workbooks.add();varExWSh=ExWBk.worksheets(1);ExApp.DisplayAlerts=false;ExApp.visible=true;}catch(e){alert("您的电脑没有安装MicrosoftExcel软件=.=做假!");returnfalse;}ExWBk.worksheets(1).Paste;}
tab表id
解决方案六:
导出Excel用jxl控件把这个是我项目中到处EXCEL的代码,没有整理下,不好意思哦publicbooleanexportExcel(Listlist){WritableWorkbookwwb;//工作薄对象FileOutputStreamfos;//输出流对象booleansend=false;try{//构建Workbook对象只读Workbook对象//直接从本地文件创建Workbook//从输入流创建Workbook//InputStreamis=newFileInputStream("D://Book1.xls");//rwb=Workbook.getWorkbook(is);//Sheet(术语:工作表)就是Excel表格左下角的Sheet1,Sheet2,Sheet3但在程序中//Sheet的下标是从0开始的//获取第一张Sheet表//Sheetrs=rwb.getSheet(0);//获取Sheet表中所包含的总列数//intrsColumns=rs.getColumns();//获取Sheet表中所包含的总行数//intrsRows=rs.getRows();//获取指这下单元格的对象引用//for(inti=0;i<rsRows;i++){//for(intj=0;j<rsColumns;j++){//Cellcell=rs.getCell(j,i);//System.out.print(cell.getContents()+"");//}//System.out.println();//}//利用已经创建的Excel工作薄创建新的可写入的Excel工作薄CreateXmlxml=newCreateXml();Stringpath=xml.selectPath("system/exportPath");fos=newFileOutputStream(path+"//奖罚表.xls");//创建excel文件wwb=Workbook.createWorkbook(fos);//创建工作薄对象//jxl.write.WritableWorkbookwwb=Workbook.createWorkbook(new//File("D://Book2.xls"),rwb);//读取第一张工作表//jxl.write.WritableSheetws=wwb.getSheet(0);WritableSheetws=wwb.createSheet("奖罚表",10);//创建工作表//获取第一个单元格对象//jxl.write.WritableCellwc=ws.getWritableCell(0,0);//决断单元格的类型,做出相应的转化//if(wc.getType()==CellType.LABEL){//Labell=(Label)wc;//l.setString("Thevaluehasbeenmodified.");//}//设置单元格的文字格式WritableFontwf=newWritableFont(WritableFont.ARIAL,10,WritableFont.NO_BOLD,false,UnderlineStyle.NO_UNDERLINE,Colour.BLUE);WritableCellFormatwcf=newWritableCellFormat(wf);wcf.setVerticalAlignment(VerticalAlignment.CENTRE);wcf.setAlignment(Alignment.CENTRE);ws.addCell(newLabel(0,0,"编号",wcf));ws.addCell(newLabel(1,0,"雇员编号",wcf));ws.addCell(newLabel(2,0,"类型",wcf));ws.addCell(newLabel(3,0,"奖罚内容",wcf));ws.addCell(newLabel(4,0,"奖罚原因",wcf));ws.addCell(newLabel(5,0,"金额",wcf));ws.addCell(newLabel(6,0,"日期",wcf));ws.addCell(newLabel(7,0,"批准人",wcf));ws.addCell(newLabel(8,0,"备注",wcf));for(inti=0;i<list.size();i++){Awardandpunishpo=(Awardandpunish)list.get(i);ws.addCell(newLabel(0,i+1,Integer.valueOf(po.getMid()).toString()));ws.addCell(newLabel(1,i+1,Integer.valueOf(po.getEmployeeByMemployeeid().getEid()).toString()));ws.addCell(newLabel(2,i+1,po.getMtype()));ws.addCell(newLabel(3,i+1,po.getMcontent()));ws.addCell(newLabel(4,i+1,po.getMbecause()));ws.addCell(newLabel(5,i+1,Float.valueOf((po.getMmoney())).toString()));ws.addCell(newLabel(6,i+1,po.getMtime()));ws.addCell(newLabel(7,i+1,Integer.valueOf(po.getEmployeeByMconfirmemployeeid().getEid()).toString()));ws.addCell(newLabel(8,i+1,po.getMremark()));}//写入Excel对象wwb.write();wwb.close();//操作完成时,关闭对象,翻译占用的内存空间send=true;}catch(Exceptione){e.printStackTrace();send=false;returnsend;}returnsend;}