c# 与ajax 结合使用 实现excel 导出

问题描述

js代码$.ajax({type:"Post",url:"/RMBase/SysReport/Housingresources_List.aspx/ExportToExcel",contentType:"application/json;charset=utf-8",success:function(msg){alert("成功导出数据");},error:function(err){alert("导出过程中发生错误");}});c#代码[WebMethod]publicstaticstringExportToExcel(){if(dtReport!=null){Microsoft.Office.Interop.Excel._ApplicationxlApp=null;try{xlApp=newMicrosoft.Office.Interop.Excel.ApplicationClass();}catch(Exceptionex){throwex;}if(xlApp!=null){try{Microsoft.Office.Interop.Excel.WorkbookxlBook=xlApp.Workbooks.Add(true);objectoMissing=System.Reflection.Missing.Value;Microsoft.Office.Interop.Excel.WorksheetxlSheet=null;xlSheet=(Microsoft.Office.Interop.Excel.Worksheet)xlBook.Worksheets[1];xlSheet.Name="table";intcolCount=dtReport.Columns.Count;introwCount=dtReport.Rows.Count;//列名xlSheet.Cells[2,1]="街道";xlSheet.Cells[2,2]="小区";xlSheet.Cells[2,3]="楼栋";xlSheet.Cells[2,4]="室号";xlSheet.Cells[2,5]="所属工程";xlSheet.Cells[2,6]="面积";xlSheet.Cells[2,7]="对应车库";xlSheet.Cells[2,8]="阁楼面积";xlSheet.Cells[2,9]="拆迁户姓名";xlSheet.Cells[2,10]="身份证";xlSheet.Cells[2,11]="联系方式";for(inti=1;i<12;i++){xlSheet.get_Range(xlSheet.Cells[2,i],xlSheet.Cells[2,i]).Font.Bold=true;xlSheet.get_Range(xlSheet.Cells[2,i],xlSheet.Cells[2,i]).Font.Size="10";}for(inti=0;i<rowCount;i++){for(intj=1;j<colCount;j++){xlSheet.Cells[i+3,j]=dtReport.Rows[i][j-1].ToString();}}xlSheet.Cells.EntireColumn.AutoFit();xlApp.DisplayAlerts=false;xlApp.Visible=true;}catch(Exceptionex){throwex;}finally{}}}return"";}

解决方案

解决方案二:
你要干嘛?
解决方案三:
导出成Excel和ajax有关系么?直接用C#搞定不就完了?
解决方案四:
我也搞过这个东西。给几点想法:1.ajax发送请求后,调用的函数都是在后台执行的,如果你是excel导出的时候失败,那么请调试后台代码。2.你前端发送的ajax请求给后台,后台成功生成了excel,那么很好,但是很遗憾,这个excel还在后台,即sever端,你需要调用HTTpcontext.response的方法(并且要指定某个属性为附件)来将这个后台生成好的excel传到前端供用户下载。3.asp.net的话上述方法很简单,如果页面是纯种html写的话,建议如果只是需要把页面的一个table导出为excel供用户下载的话,建议直接javascript生成excel供用户下载就好了。
解决方案五:
引用2楼q72363850的回复:

导出成Excel和ajax有关系么?直接用C#搞定不就完了?

同问,C#的方法不是直接导出么,ajax调用完成,保存本地

时间: 2016-09-22

c# 与ajax 结合使用 实现excel 导出的相关文章

java poi 导出excel-java使用poi实现excel导出之后如何弹出保存提示框

问题描述 java使用poi实现excel导出之后如何弹出保存提示框 无论使用poi还是使用jxl导出excel都需要用到流 一种是outputstrean,另一种fileoutputstream 第一种:如果想要弹出保存的提示框必须加入下列三句response.setContentType(""application/vnd.ms-excel; charset=utf-8"");response.setHeader(""Content-Disp

VBA将Excel导出为XML

以下代码的功能,是配合select,将Excel导出为XML文件. Const stSQL As String = "SELECT * FROM [Report]" Dim stCon As String stCon = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "Data Source=" & ThisWorkbook.FullName & ";" & _

htmltoexcel导出问题-asp.net excel导出问题

问题描述 asp.net excel导出问题 Response.Clear(); Response.Charset = ""utf-8""; Response.ContentType = ""application/vnd.ms-excel""; //Response.ContentType = ""application/octet-stream""; Response.Content

visual studio-导出excel表 只能导出到服务器而本地缺没有,如何把excel导出到本地,详细过程 谢谢!

问题描述 导出excel表 只能导出到服务器而本地缺没有,如何把excel导出到本地,详细过程 谢谢! 用VS2013编写的.net程序,做好了一个导出按钮,需要的功能是把一个table表的内容导入到excel表中并按照一定的路径导出来,但是每次点击导出的时候总是导入到的是服务器的所属路径,本地路径却没有,如何做才能导出到本地路径呢?求大神指点. 解决方案 先导出到服务器上,然后再让客户端下载. 解决方案二: http://www.cnblogs.com/weixing/archive/2012

php上传excel导出pdf~菜鸟求教,大神指点

问题描述 php上传excel导出pdf~菜鸟求教,大神指点 烦了我三个星期的需求:在线excel转pdf. 需求是把excel上传后经过php转为pdf,我开是利用了phpexcel,上传后再用tcpdf生成,但是phpexcel无法,或者说找不到获取列宽和行高的函数.然后就直接用phpexcel调用tcpdf的类库输出,但是就生成乱码 - -. 目前使用的环境是PHP5.4+linux+tengine 现在有几个问题,想请教各路大神: 1.phpexcel如何获取列宽和行高 2.如何生成pd

excel导出oracle数据汉字乱码,但是在PLSQL下或GOLDEN下都正常!

问题描述 excel导出oracle数据汉字乱码,但是在PLSQL下或GOLDEN下都正常! excel导出oracle数据汉字乱码,但是在PLSQL下或GOLDEN下都正常!请大神帮忙! 解决方案 应该是字符集的问题,把字符集设置为UTF-8试试

请教C#,Form窗口的一个Button,调用Excel导出表格时出错

问题描述 请教C#,Form窗口的一个Button,调用Excel导出表格时出错 一个调用Excel导出表的操作,出错.请熟悉excel调用的高手指教. 相关代码: private void button1_Click(object sender, EventArgs e) { saveFileDialog1.AddExtension = true;//对话框自动在文件名中添加扩展名 saveFileDialog1.FileName = name+"与"+name1+"担保信

c语言-如何用c读取从excel导出的文本文件中的text字段

问题描述 如何用c读取从excel导出的文本文件中的text字段 (初学c语言)我想编写一个实现材料管理功能的程序.因还不会从Excel中直接读取数据,因此选择了从Excel导出到txt文件中,然后再读取到程序当中. 但是问题来了.经常遇到的情形是,记录都有一个或者多个字段是字符型(数据库中的描述,非C语言的字符),从Excel中导出的文本中是以"text,text"处理的,即以英文状态下的双引号将这个字段放在了一起.下面是某条记录: 项目号 仓库名称 货位名称 Ident代码 材料代

excel导出-java导出excel时的数据换行问题

问题描述 java导出excel时的数据换行问题 java中做页面中表单的excel导出功能(表单数据通过sql查询),表单的其中一列是通过字符串的拼接形成的,为了页面的美观,在sql中拼接该字符串时,根据分隔号拼接标签,使其可以在页面上显示出多条记录分行的效果.但是由于excel导出用的sql和页面展示用的sql是同一句,因此在导出的excel中该列的显示会出现xxxxxxx的情况. 目前是处理方式是通过同样的方法拼接一个字段,但是不拼接,在页面显示中使用拼接了的,在导出时取的数据来自于不拼接