C# html的Table导出到Excel中

简介:

C#中导出Excel分为两大类。一类是Winform的,一类是Web。今天说的这一种是Web中的一种,把页面上的Table部分导出到Excel中。

Table导出Excel,简单点说,分为以下几步:

1.根据table的id,获取到Table的html,如用jquery获取table的代码:$("#table").html().但这只是获取到<table></table>之间的内容,还需要拼接上。

2.把页面获取到的table的html代码提交到后台。

3.后台的Response设置了一下要导出的格式,导出的编码,和导出的文件名。

具体详细,看一下下面的代码。

(1)获取table

复制代码
复制代码
var tableHead = "<html><meta http-equiv=\"content-type\" content=\"text/html; charset=UTF-8\" /><body><table><tr><td style=\"background-color: #84aced;\">社員番号</td><td style=\"background-color: #84aced;\">社員名前</td><td style=\"background-color: #84aced;\">拠点</td>"
                            + "<td style=\"background-color: #84aced;\">分野</td><td style=\"background-color: #84aced;\">課</td><td style=\"background-color: #84aced;\">職位</td><td style=\"background-color: #84aced;\">"
                            + "対象</td><td style=\"background-color: #84aced;\">一次評価者</td><td style=\"background-color: #84aced;\">二次評価者</td><td style=\"background-color: #84aced;\">操作</td></tr>";
$("#html").val(tableHead + $("#datalist").html() + "</table></body></html>"); //获取并拼接代码
复制代码
复制代码

(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();
复制代码
复制代码
分类:  ASP.NET

本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/p/3668418.html ,如需转载请自行联系原作者
相关文章
Excel中如何批量重命名工作表与将每个工作表导出到单独Excel文件
本文介绍了如何在Excel中使用VBA批量重命名工作表、根据单元格内容修改颜色,以及将工作表导出为独立文件的方法。同时提供了Python实现导出工作表的代码示例,适用于自动化处理Excel文档。
Postman 可以将文档导出为 HTML/Markdown 吗?
Postman 没有提供直接将你的文档导出为 HTML 或 Markdown 的途径。太糟糕了
|
移动开发 JavaScript 前端开发
html table+css实现可编辑表格的示例代码
html table+css实现可编辑表格的示例代码
721 12
|
数据格式 UED
记录一次NPOI库导出Excel遇到的小问题解决方案
【11月更文挑战第16天】本文记录了使用 NPOI 库导出 Excel 过程中遇到的三个主要问题及其解决方案:单元格数据格式错误、日期格式不正确以及合并单元格边框缺失。通过自定义单元格样式、设置数据格式和手动添加边框,有效解决了这些问题,提升了导出文件的质量和用户体验。
1238 3
|
前端开发
实现Excel文件和其他文件导出为压缩包,并导入
实现Excel文件和其他文件导出为压缩包,并导入
472 1
|
JavaScript 前端开发 数据处理
Vue导出el-table表格为Excel文件的两种方式
Vue导出el-table表格为Excel文件的两种方式
1299 6
|
存储 Java API
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
Java实现导出多个excel表打包到zip文件中,供客户端另存为窗口下载
1233 4
|
Java API Apache
|
12月前
|
XML 前端开发 C#
C#编程实践:解析HTML文档并执行元素匹配
通过上述步骤,可以在C#中有效地解析HTML文档并执行元素匹配。HtmlAgilityPack提供了一个强大而灵活的工具集,可以处理各种HTML解析任务。
461 19
|
C# 开发者
C# 一分钟浅谈:Code Contracts 与契约编程
【10月更文挑战第26天】本文介绍了 C# 中的 Code Contracts,这是一个强大的工具,用于通过契约编程增强代码的健壮性和可维护性。文章从基本概念入手,详细讲解了前置条件、后置条件和对象不变量的使用方法,并通过具体代码示例进行了说明。同时,文章还探讨了常见的问题和易错点,如忘记启用静态检查、过度依赖契约和性能影响,并提供了相应的解决建议。希望读者能通过本文更好地理解和应用 Code Contracts。
500 3

热门文章

最新文章