C#中导出Excel分为两大类。一类是Winform的,一类是Web。今天说的这一种是Web中的一种,把页面上的Table部分导出到Excel中。
Table导出Excel,简单点说,分为以下几步:
1.根据table的id,获取到Table的html,如用jquery获取table的代码:$("#table").html().但这只是获取到
2.把页面获取到的table的html代码提交到后台。
3.后台的Response设置了一下要导出的格式,导出的编码,和导出的文件名。
具体详细,看一下下面的代码。
(1)获取table
var tableHead = "
社員番号 | 社員名前 | 拠点 | "分野 | 課 | 職位 | " + "対象 | 一次評価者 | 二次評価者 | 操作 |
(2)因为获取表格的html代码比较长,通过Form表单的形式提交个后台
document.getElementById("ExcelForm").submit();
(3)后台将获取到的table代码导出到Excel中
string excelHtml = context.Request["excelHtml"];
string name = DateTime.Now.ToString();
context.Response.Buffer = true;
//输出的应用类型
context.Response.ContentType = "application/vnd.ms-excel";
//设定编码方式,若输出的excel有乱码,可优先从编码方面解决
context.Response.Charset = "utf-8";
context.Response.ContentEncoding = System.Text.Encoding.UTF8;
//filenames是自定义的文件名
context.Response.AppendHeader("Content-Disposition", "attachment;filename=" + name + ".xls");
//content是步骤1的html,注意是string类型
context.Response.Write(excelHtml);
context.Response.End();
精彩文章
发表评论